Files
yii2/extensions/twig/ViewRendererStaticClassProxy.php
Carsten Brandt 668dacbab6 Merge pull request #2622 branch 'ext-codestyle-fix' of https://github.com/AlexGx/yii2 into code-style
* 'ext-codestyle-fix' of https://github.com/AlexGx/yii2:
  fix php5.4 array syntax
  many phpcs fixes
  fix phpDoc LuaScriptBuilder build @throws

Conflicts:
	extensions/apidoc/commands/RenderController.php
	extensions/apidoc/models/BaseDoc.php
	extensions/apidoc/templates/BaseRenderer.php
	extensions/apidoc/templates/bootstrap/Renderer.php
	extensions/apidoc/templates/bootstrap/layouts/guide.php
	extensions/apidoc/templates/bootstrap/layouts/main.php
	extensions/apidoc/templates/html/Renderer.php
	extensions/apidoc/templates/offline/Renderer.php
	extensions/apidoc/templates/offline/assets/AssetBundle.php
	extensions/apidoc/templates/offline/views/index.php
2014-03-07 21:34:23 +01:00

45 lines
1009 B
PHP

<?php
/**
* Twig ViewRendererStaticClassProxy class file.
*
* @link http://www.yiiframework.com/
* @copyright Copyright &copy; 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
namespace yii\twig;
/**
* Class-proxy for static classes
* Needed because you can't pass static class to Twig other way
*
* @author Leonid Svyatov <leonid@svyatov.ru>
*/
class ViewRendererStaticClassProxy
{
private $_staticClassName;
public function __construct($staticClassName)
{
$this->_staticClassName = $staticClassName;
}
public function __get($property)
{
$class = new \ReflectionClass($this->_staticClassName);
return $class->getStaticPropertyValue($property);
}
public function __set($property, $value)
{
$class = new \ReflectionClass($this->_staticClassName);
$class->setStaticPropertyValue($property, $value);
return $value;
}
public function __call($method, $arguments)
{
return call_user_func_array([$this->_staticClassName, $method], $arguments);
}
}