我进行了广泛的搜索,发现了这个:
但是,所提供的示例都没有真正起作用。
我有一个对象,它有一个变量,它是一个多维数组。我需要更改该数组中键的值。
例子:
foreach ($code->files as $index => $value)
{
if (strcmp($code->files[$index]['id'], $fileid) == 0)
{
$code->files[$index]['title'] = "Test";
$code->save();
}
}
上面的代码确实会产生错误:
Notice: Indirect modification of overloaded property CodeDocument::$files has no effect in /var/www/deletefile.php on line 57
我已经尝试了之前引用的线程链接中的所有示例,但它们都不起作用。它们都产生上述错误。
我正在使用预构建的类库(phpillow),但我尝试将 __get 函数更改为 &__get 并抑制上面的错误,但我尝试更改的变量仍然没有获得新值。
我不确定我是否做得对,但我完全不知所措。在不将数组作为类变量的情况下执行此操作将需要大量重构,如果可能的话,我宁愿避免这样做。
任何帮助是极大的赞赏。