【发布时间】:2019-01-04 00:32:21
【问题描述】:
我有一个这样的数组...
[Summary] => Array
(
[0] => yearManufactured
[1] => &&
[2] => make
[3] => ||
[4] => model
)
我怎样才能把这个数组转换成函数调用和操作符,然后用它来做一个比较,比如把它变成这个...
if( $this->yearManufactured() && $this->make() || $this->model() ) {
// do something
} else {
// do something else
}
类中的方法..
public function yearManufactured() {
return true;
}
public function make() {
return false;
}
public function model() {
return true;
}
【问题讨论】:
-
有趣,您是否需要一种方法来确定它是否应该被解释为
(a && b) || c而不是a && (b || c)? -
是的,我还没有做到这一点,但我需要修改一些东西,我可以很容易地将“(”和“)”添加为另一个单独的数组值。跨度>
-
所有方法名称都已检查是否存在。我在想这样的事情:将数组内爆成一个字符串,粘合为“”,然后用 $this->$methodName() 替换所有非字母数字单词。我不确定这个字符串是否一旦创建,是否可以转换和使用。
标签: php methods comparison operators function-call