【发布时间】:2018-09-26 23:07:44
【问题描述】:
我的数组是
Array
(
[#A] => 12 > 5
[#B] => 4 > 3
)
我想在表达式中替换
((#A) OR (#B) AND (#A))
通过匹配数组的键。所以我期待结果为
((12 > 5) OR (4 > 3) AND (12 > 5))
目前我无法实现。提前致谢。
考虑我的代码段`
$this->logger->debug($datauser); // [ZN1961] => Array([#A] => 12 > 5 [#B] => 4 > 3 ), [ZN1962] => Array ([#A] => 20 > 5 [#B] => 20 > 3 )
logicexpression = ((#A) OR (#B) AND (#A));
$newArr = array();
foreach ($datauser as $key => $value) {
foreach ($value as $logname => $cond) {
if(array_key_exists($logname,$value)){
$newArr[$key] =str_replace($logname, $cond, $logicexpression);;
}
}
}
$this->logger->debug($newArr); // here I am always getting ((12 > 5) OR (4 > 3) AND (12 > 5))`
【问题讨论】:
标签: php associative-array string-matching