我正在使用模板引擎在我想要的网站中插入代码.
我写了一个函数来测试一些非常简单的东西:
myfunction() { return '($this->data["a"]["b"] ? true : false)'; }
Run Code Online (Sandbox Code Playgroud)
问题是,$ this-> data是私有的,我无法在任何地方访问它,所以我必须使用getData(); 这导致我的问题.
$this->getData()['a']['b']
Run Code Online (Sandbox Code Playgroud)
不起作用,并且首先分配值也不会因为它将直接在if()块中使用.
有任何想法吗?
在php中,我经常需要使用数组来映射变量......但我似乎无法在一个内联中执行此操作.cf示例:
// the following results in an error:
echo array('a','b','c')[$key];
// this works, using an unnecessary variable:
$variable = array('a','b','c');
echo $variable[$key];
Run Code Online (Sandbox Code Playgroud)
这是一个小问题,但它每隔一段时间就会不停地窃听......我不喜欢这样一个事实:我没有使用变量;)
我想在不使用额外变量的情况下做这样的事情:
class className {
public static function func(){
return array('true','val2');
}
}
if(className::func()[0]) {
echo 'do?ru';
} else {
echo 'Yanl??';
}
Run Code Online (Sandbox Code Playgroud)