我已经阅读了有关 PHP 变量引用的信息,但我不是 100%,希望有人能提供帮助。
如果我有如下课程:
class Item
{
public $value;
}
然后我在一个变量中有一个这些项目的数组 - 让我们称之为 $items。我所做的只是 new Item()...和 $items[] = $newItem;。
现在,我想填充另一个数组,但它会根据其值过滤原始数组。所以像下面这样:
foreach($items as $key => $value)
{
$filteredItems[] = &value;
}
现在,我有另一个变量迭代该过滤列表并执行以下操作:
$theItem = $filteredItems[10];
$theItem->value = 100;
现在这就是我感到困惑的地方。我需要设置$theItem
为&filteredItems[10];
(reference) 还是它只知道数组中的值是引用类型并且 $theItem 也成为对同一项目的引用?我在最后一组$theItem->value = 100;
更改存储在$items
列表中的原始对象之后。