本文整理匯總了PHP中Zend\ServiceManager\ServiceManager::createServiceViaCallback方法的典型用法代碼示例。如果您正苦於以下問題:PHP ServiceManager::createServiceViaCallback方法的具體用法?PHP ServiceManager::createServiceViaCallback怎麽用?PHP ServiceManager::createServiceViaCallback使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Zend\ServiceManager\ServiceManager
的用法示例。
在下文中一共展示了ServiceManager::createServiceViaCallback方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: createServiceViaCallback
/**
* Create service via callback
*
* @param callable $callable
* @param string $cName
* @param string $rName
* @throws Exception\ServiceNotCreatedException
* @throws Exception\ServiceNotFoundException
* @throws Exception\CircularDependencyFoundException
* @return object
*/
protected function createServiceViaCallback($callable, $cName, $rName)
{
if (is_object($callable)) {
$factory = $callable;
} elseif (is_array($callable)) {
// reset both rewinds and returns the value of the first array element
$factory = reset($callable);
}
// duck-type MutableCreationOptionsInterface for forward compatibility
if (isset($factory) && method_exists($factory, 'setCreationOptions') && is_array($this->creationOptions) && !empty($this->creationOptions)) {
$factory->setCreationOptions($this->creationOptions);
} elseif ($factory instanceof Factory\InvokableFactory) {
$factory->setCreationOptions([]);
}
return parent::createServiceViaCallback($callable, $cName, $rName);
}
示例2: createServiceViaCallback
/**
* Create service via callback
*
* @param callable $callable
* @param string $cName
* @param string $rName
* @throws Exception\ServiceNotCreatedException
* @throws Exception\ServiceNotFoundException
* @throws Exception\CircularDependencyFoundException
* @return object
*/
protected function createServiceViaCallback($callable, $cName, $rName)
{
if (is_object($callable)) {
$factory = $callable;
} elseif (is_array($callable)) {
// reset both rewinds and returns the value of the first array element
$factory = reset($callable);
}
if (isset($factory) && $factory instanceof MutableCreationOptionsInterface && is_array($this->creationOptions) && !empty($this->creationOptions)) {
$factory->setCreationOptions($this->creationOptions);
}
return parent::createServiceViaCallback($callable, $cName, $rName);
}