<?php
class Foo{
public $basket;
public function __construct()
{
$this->basket = 1;
}
public function getBasket(){
return $this->basket;
}
}
class Bar{
public function __construct(&$basket)
{
$basket++;
}
}
$newFoo = new Foo();
$newBar = new Bar($newFoo->getBasket());
echo $newFoo->getBasket();
?>
我希望初始化一個類中的$basket
值,並通過另一個類操作相同的變量。不幸的是,我不斷收到「注意:只有變量應該通過引用傳遞」的錯誤信息。跨兩個不同的類別引用相同的變量
問題:如何更改代碼以實現此目的?謝謝。
我不會做這樣的事情可以修改購物籃內容,這是不容易保持具有獨特的籃子參考。我會有一個名爲Basket的單獨的類。現在,給Foo和Bar提供籃子的相同實例,並且可以根據需要添加它 - 但訪問是受控的。 [演示在eval.in](https://eval.in/619687)。而且更容易測試,調試和添加新功能。 –
嗨瑞安。好點,我喜歡你在那裏做的。我正在致力於一個MVC在線購物平臺。這個問題的目的是弄清楚如何在PHP的不同頁面之間共享對象(訂單的模型表示)。這是一個單獨的問題,我可能會在近期提出。 – taylorswiftfan
[清晰演示爲eval.in](https://eval.in/619689) - 整理回聲。 –