本文整理匯總了PHP中ComponentCollection::normalizeObjectArray方法的典型用法代碼示例。如果您正苦於以下問題:PHP ComponentCollection::normalizeObjectArray方法的具體用法?PHP ComponentCollection::normalizeObjectArray怎麽用?PHP ComponentCollection::normalizeObjectArray使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類ComponentCollection
的用法示例。
在下文中一共展示了ComponentCollection::normalizeObjectArray方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: __construct
/**
* Constructor
*
* @param ComponentCollection $collection A ComponentCollection this component can use to lazy load its components
* @param array $settings Array of configuration settings.
*/
public function __construct(ComponentCollection $collection, $settings = array()) {
$this->_Collection = $collection;
$this->settings = $settings;
$this->_set($settings);
if (!empty($this->components)) {
$this->_componentMap = ComponentCollection::normalizeObjectArray($this->components);
}
}
示例2: init
/**
* Initializes all the Components for a controller.
* Attaches a reference of each component to the Controller.
*
* @param Controller $Controller Controller to initialize components for.
* @return void
*/
public function init(Controller $Controller) {
if (empty($Controller->components)) {
return;
}
$this->_Controller = $Controller;
$components = ComponentCollection::normalizeObjectArray($Controller->components);
foreach ($components as $name => $properties) {
$Controller->{$name} = $this->load($properties['class'], $properties['settings']);
}
}
示例3: loadComponent
/**
* Loads a Component
*
* @param string $componentClass Name of model class to load
* @param array $settings array of settings
* @return void
* @access public
**/
public function loadComponent($componentClass, $settings = array())
{
if (empty($this->_internals['controller'])) {
$this->loadController();
}
$components = ComponentCollection::normalizeObjectArray(array($componentClass => $settings));
foreach ($components as $name => $properties) {
$this->_internals['controller']->{$name} = $this->_internals['controller']->Components->load($properties['class'], $properties['settings']);
$this->{$name} = $this->_internals['controller']->{$name};
}
if (method_exists($this->_internals['controller']->{$name}, 'initialize')) {
$this->_internals['controller']->{$name}->initialize($this->_internals['controller']);
}
if (method_exists($this->_internals['controller']->{$name}, 'startup')) {
$this->_internals['controller']->{$name}->startup($this->_internals['controller']);
}
}