Je dois admettre que toute la confusion sur le "passage par référence" de PHP m'a affecté et maintenant je ne suis pas clair. J'aurais pensé que le code suivant:Passer une référence à un tableau privé
class TestClass {
private $my_precious = array ('one','two','three');
public function &give_reference() {
return $this->my_precious;
}
}
$foobar = new TestClass();
$my_ref = $foobar->give_reference();
$my_ref = array ("four", "five", "six");
echo print_r($foobar,true);
imprimerait:
TestClass Object
(
[my_precious:TestClass:private] => Array
(
[0] => four
[1] => five
[2] => six
)
)
mais hélas, ma référence semble avoir aucun pouvoir rester et à la place que l'écho de:
TestClass Object
(
[my_precious:TestClass:private] => Array
(
[0] => one
[1] => two
[2] => three
)
)
Comment puis-je faire ce travail?