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


PHP Zend_Reflection_Class::hasMethod方法代码示例

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


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

示例1: _processSpecialties

    /**
     * _processSpecialties() - Break out the specialty names for this provider
     *
     */
    protected function _processSpecialties()
    {
        $specialties = array();

        if ($this->_providerReflection->hasMethod('getSpecialties')) {
            $specialties = $this->_provider->getSpecialties();
            if (!is_array($specialties)) {
                require_once 'Zend/Tool/Framework/Provider/Exception.php';
                throw new Zend_Tool_Framework_Provider_Exception(
                    'Provider ' . get_class($this->_provider) . ' must return an array for method getSpecialties().'
                    );
            }
        } else {
            $defaultProperties = $this->_providerReflection->getDefaultProperties();
            $specialties = (isset($defaultProperties['_specialties'])) ? $defaultProperties['_specialties'] : array();
            if (!is_array($specialties)) {
                require_once 'Zend/Tool/Framework/Provider/Exception.php';
                throw new Zend_Tool_Framework_Provider_Exception(
                    'Provider ' . get_class($this->_provider) . '\'s property $_specialties must be an array.'
                    );
            }
        }

        $this->_specialties = array_merge(array('_Global'), $specialties);

    }
开发者ID:nhp,项目名称:shopware-4,代码行数:30,代码来源:Signature.php

示例2: _callPlugins

 /**
  * Trigger Seotoaster plugins hooks
  *
  * @param $method string Method to trigger
  */
 private function _callPlugins($method)
 {
     $enabledPlugins = Tools_Plugins_Tools::getEnabledPlugins();
     if (is_array($enabledPlugins) && !empty($enabledPlugins)) {
         array_walk($enabledPlugins, function ($plugin, $key, $data) {
             try {
                 $name = ucfirst($plugin->getName());
                 Tools_Factory_PluginFactory::validate($name);
                 $reflection = new Zend_Reflection_Class($name);
                 if ($reflection->hasMethod($data['method'])) {
                     $pluginInstance = Tools_Factory_PluginFactory::createPlugin($plugin->getName(), array(), array('websiteUrl' => $data['websiteUrl']));
                     $pluginInstance->{$data}['method']();
                 }
             } catch (Exceptions_SeotoasterException $se) {
                 error_log($se->getMessage());
                 error_log($se->getTraceAsString());
             }
         }, array('method' => $method, 'websiteUrl' => Zend_Controller_Action_HelperBroker::getStaticHelper('Website')->getUrl()));
     }
 }
开发者ID:PavloKovalov,项目名称:seotoaster,代码行数:25,代码来源:Plugin.php

示例3: objectToDictionary

 /**
  * Method scan given object for properties which has public getters
  * and generate array of entities-replacements pairs from this method
  * @param $object Object
  * @param $namespace Custom namespace for replacements
  * @return Tools_Content_EntityParser Return self for chaining
  * @throws Exceptions_SeotoasterException
  */
 public function objectToDictionary($object, $namespace = null)
 {
     if (!is_object($object)) {
         throw new Exceptions_SeotoasterException('Given variable must be an object');
     }
     $reflection = new Zend_Reflection_Class($object);
     $dictionary = array();
     foreach ($reflection->getProperties() as $prop) {
         $normalizedPropName = join('', array_map('ucfirst', explode('_', $prop->getName())));
         $getter = 'get' . join('', array_map('ucfirst', explode('_', $prop->getName())));
         if ($reflection->hasMethod($getter)) {
             $replacement = $object->{$getter}();
             $className = empty($namespace) ? preg_replace('/.*_([\\w\\d]*)$/', '$1', $reflection->getName()) : $namespace;
             $entityName = strtolower($className . ':' . $normalizedPropName);
             if (!is_array($replacement) && !is_object($replacement)) {
                 $dictionary[$entityName] = $replacement;
             }
         }
     }
     $this->addToDictionary($dictionary);
     return $this;
 }
开发者ID:PavloKovalov,项目名称:seotoaster,代码行数:30,代码来源:EntityParser.php

示例4: _runStatic

 private static function _runStatic($pluginClass, $method)
 {
     $reflection = new Zend_Reflection_Class(ucfirst($pluginClass));
     if ($reflection->hasMethod($method)) {
         return $pluginClass::$method();
     }
     return false;
 }
开发者ID:PavloKovalov,项目名称:seotoaster,代码行数:8,代码来源:Tools.php


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