当前位置: 首页>>代码示例>>PHP>>正文


PHP ViewableData::allMethodNames方法代码示例

本文整理汇总了PHP中ViewableData::allMethodNames方法的典型用法代码示例。如果您正苦于以下问题:PHP ViewableData::allMethodNames方法的具体用法?PHP ViewableData::allMethodNames怎么用?PHP ViewableData::allMethodNames使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ViewableData的用法示例。


在下文中一共展示了ViewableData::allMethodNames方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: forTemplate

 /**
  * Return debugging information, as XHTML. If a field name is passed, it will show debugging information on that
  * field, otherwise it will show information on all methods and fields.
  *
  * @param string $field the field name
  * @return string
  */
 public function forTemplate($field = null)
 {
     // debugging info for a specific field
     if ($field) {
         return "<b>Debugging Information for {$this->class}->{$field}</b><br/>" . ($this->object->hasMethod($field) ? "Has method '{$field}'<br/>" : null) . ($this->object->hasField($field) ? "Has field '{$field}'<br/>" : null);
     }
     // debugging information for the entire class
     $reflector = new ReflectionObject($this->object);
     $debug = "<b>Debugging Information: all methods available in '{$this->object->class}'</b><br/><ul>";
     foreach ($this->object->allMethodNames() as $method) {
         // check that the method is public
         if ($method[0] === strtoupper($method[0]) && $method[0] != '_') {
             if ($reflector->hasMethod($method) && ($method = $reflector->getMethod($method))) {
                 if ($method->isPublic()) {
                     $debug .= "<li>\${$method->getName()}";
                     if (count($method->getParameters())) {
                         $debug .= ' <small>(' . implode(', ', $method->getParameters()) . ')</small>';
                     }
                     $debug .= '</li>';
                 }
             } else {
                 $debug .= "<li>\${$method}</li>";
             }
         }
     }
     $debug .= '</ul>';
     if ($this->object->hasMethod('toMap')) {
         $debug .= "<b>Debugging Information: all fields available in '{$this->object->class}'</b><br/><ul>";
         foreach ($this->object->toMap() as $field => $value) {
             $debug .= "<li>\${$field}</li>";
         }
         $debug .= "</ul>";
     }
     // check for an extra attached data
     if ($this->object->hasMethod('data') && $this->object->data() != $this->object) {
         $debug .= ViewableData_Debugger::create($this->object->data())->forTemplate();
     }
     return $debug;
 }
开发者ID:jacobbuck,项目名称:silverstripe-framework,代码行数:46,代码来源:ViewableData.php

示例2: forTemplate

 /**
  * Return debugging information, as XHTML. If a field name is passed,
  * it will show debugging information on that field, otherwise it will show
  * information on all methods and fields.
  * @var string $field The field name.
  * @return string
  */
 function forTemplate($field = null)
 {
     if ($field) {
         return "<b>Info on {$field}:<br/>" . ($this->obj->hasMethod($field) ? "Has method '{$field}'.  " : "") . ($this->obj->hasField($field) ? "Has field '{$field}'.  " : "");
     } else {
         echo "<b>Debug: all methods available in {$this->obj->class}</b><br/>";
         echo "<ul>";
         $names = $this->obj->allMethodNames();
         foreach ($names as $name) {
             if (strtoupper($name[0]) == $name[0] && $name[0] != "_") {
                 echo "<li>\${$name}</li>";
             }
         }
         echo "</ul>";
         if ($this->obj->hasMethod('getAllFields')) {
             echo "<b>Debug: all fields available in {$this->obj->class}</b><br/>";
             echo "<ul>";
             $data = $this->obj->getAllFields();
             foreach ($data as $key => $val) {
                 echo "<li>\${$key}</li>";
             }
             echo "</ul>";
         }
     }
     if ($this->obj->hasMethod('data')) {
         if ($this->obj->data() != $this->obj) {
             $d = new ViewableData_Debugger($this->obj->data());
             echo $d->forTemplate();
         }
     }
 }
开发者ID:ramziammar,项目名称:websites,代码行数:38,代码来源:ViewableData.php


注:本文中的ViewableData::allMethodNames方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。