本文整理汇总了PHP中Nette\Object类的典型用法代码示例。如果您正苦于以下问题:PHP Object类的具体用法?PHP Object怎么用?PHP Object使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Object类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: register
/**
* Registers all object's events to matching methods
*
* @param vBuilder\Object $object
*/
public function register(Nette\Object $object)
{
$rc = $object->getReflection();
$rc2 = $this->getReflection();
$publicProperties = $rc->getProperties(\ReflectionProperty::IS_PUBLIC);
foreach ($publicProperties as $property) {
$eventName = $property->getName();
if (!preg_match('#^on[A-Z]#', $eventName)) {
continue;
}
if ($rc2->hasMethod($eventName)) {
array_push($object->{$eventName}, array($this, $eventName));
}
}
}
示例2: register
/**
* Register TextInputCustomLabel
* @param string $control_name string
* @return void
*/
public static function register($control_name = 'addTextCustomLabel')
{
Nette\Object::extensionMethod('Nette\\Forms\\Container::' . $control_name, function ($form, $name, $label = NULL, array $items = NULL) {
$control = new self($label, $items);
return $form[$name] = $control;
});
}
示例3: register
public static function register($controlName = 'addMultiSelectFileChoicer')
{
if (!is_string($controlName)) {
throw new Exception(sprintf('Control name must be string, %s given', gettype($controlName)));
}
Nette\Object::extensionMethod('Nette\\Forms\\Container::' . $controlName, function ($form, $name, IManager $mediaManager, $namespace, $label = null, $withPrimary = true) {
return $form[$name] = new \vojtabiberle\MediaStorage\Bridges\Nette\Forms\Controls\MultiSelectFileChoicer($mediaManager, $namespace, $label, $withPrimary);
});
}
示例4: register
/**
* Register NotTranslatableSelectBox
* @param string $control_name string
* @return void
*/
public static function register($control_name = 'addNotTranslatableSelect')
{
Nette\Object::extensionMethod('Nette\\Forms\\Container::' . $control_name, function ($form, $name, $label = NULL, array $items = NULL, $size = NULL) {
$control = new self($label, $items);
if ($size > 1) {
$control->setAttribute('size', (int) $size);
}
return $form[$name] = $control;
});
}
示例5: register
/**
* @param string $controlName
* @throws ImageStorageException
*/
public static function register($controlName = 'addMultiImageUpload')
{
if (!is_string($controlName)) {
throw new ImageStorageException(sprintf('Control name must be a string, %s given', gettype($controlName)));
}
Object::extensionMethod(Container::class . '::' . $controlName, function ($form, $name, $label = NULL, $namespace = NULL) {
$control = new self($label);
$control->setNamespace($namespace);
return $form[$name] = $control;
});
}
示例6: __call
public function __call($name, $args = [])
{
if (method_exists($this->acl, $name)) {
return call_user_func_array([$this->acl, $name], $args);
}
return parent::__call($name, $args);
}
示例7: __call
/**
* Allows calling $column->icon() instead of $column->setIcon (Same for title, class, ...)
* @param string $name
* @param array $args
* @return mixed
*/
public function __call($name, $args)
{
$method_setter = 'set' . ucfirst($name);
if (method_exists($this, $method_setter)) {
return Nette\Utils\Callback::invokeArgs([$this, $method_setter], $args);
}
parent::__call($name, $args);
}
示例8: elseif
/**
* @param string
* @return string|NULL
*/
public function &__get($name)
{
if (strtolower($name) === 'info') {
return $this->info;
} elseif (array_key_exists($name, $this->info)) {
return $this->info[$name];
}
return parent::__get($name);
}
示例9:
public function &__get($name)
{
$service = $this->getService($name, false);
if ($service) {
return $service;
}
$object = parent::__get($name);
return $object;
}
示例10:
public function &__get($name)
{
$val = \strtoupper($name);
if (\defined(self::INFO . $val)) {
$a = $this->getInfo(constant(self::INFO . $val));
return $a;
}
return parent::__get($name);
}
示例11: __isset
/**
* @param string $name
* @return bool
*/
public function __isset($name)
{
$isset = parent::__isset($name);
if ($isset) {
return TRUE;
}
$data = $this->getData();
return isset($data[$name]);
}
示例12:
/**
* Returns user data value.
* @param string property name
* @return mixed
*/
public function &__get($key)
{
if (parent::__isset($key)) {
return parent::__get($key);
} else {
$data = $this->data->toArray();
return $data[$key];
}
}
示例13: __call
public function __call($methodName, $args)
{
if (preg_match('|.*getModel([a-zA-Z0-9]+).*|', $methodName, $mtch)) {
if (class_exists('Model\\' . $mtch[1] . 'Model')) {
return $this->modelLoader->loadModel($mtch[1] . 'Model');
}
} else {
return parent::__call($methodName, $args);
}
}
示例14: __call
/**
* @param string $name
* @param array $args
* @return mixed
*/
public function __call($name, $args)
{
$function = 'newrelic_' . self::convertCamelCaseToUnderscore($name);
if (!extension_loaded('newrelic')) {
return FALSE;
}
if (!function_exists($function)) {
return parent::__call($name, $args);
}
return call_user_func_array($function, $args);
}
示例15: __call
public function __call($name, $args)
{
if (preg_match('~^create(Select|Update|Delete|Insert)$~', $name, $m)) {
#query object factory
$class = "Flunorette\\Queries\\{$m[1]}Query";
$queryContext = new QueryContext(reset($args), $this);
return new $class($queryContext);
}
return parent::__call($name, $args);
}