以下代码适用于使用 PHP 5.3 的计算机,但不适用于 PHP 5.4:
function __clone() {
$this->changed = TRUE;
foreach ($this->conditions as $key => $condition) {
if (
$condition['field']
instanceOf QueryConditionInterface) {
$this->conditions[$key]['field'] = clone($condition['field']);
}
}
}
$condition
在这两种情况下都没有“字段”偏移量,但在 PHP 5.3 中,库继续工作而没有抱怨,但是在 PHP 5.4 中给出了以下警告消息:
Warning: Illegal string offset 'field' in DatabaseCondition->__clone()
不久之后,库(来自 Drupal6)停止工作。
知道如何解决这个问题吗?
isset($condition['field'])
即使它是框架的核心库,我是否应该使用它?