在PHP 5中,所有的變量和對象按引用傳遞,但我不能讓我的代碼工作如何在PHP 5中獲取數組的引用?
我的代碼是:
$arrayA = array();
$array = $arrayA;
...
if(!in_array(thedata, $array)
$array[] = thedata;
var_dump($arrayA);
結果是空的,我失去了一些東西簡單?
在PHP 5中,所有的變量和對象按引用傳遞,但我不能讓我的代碼工作如何在PHP 5中獲取數組的引用?
我的代碼是:
$arrayA = array();
$array = $arrayA;
...
if(!in_array(thedata, $array)
$array[] = thedata;
var_dump($arrayA);
結果是空的,我失去了一些東西簡單?
<?php
$arrayA = array();
$arrayB =& $arrayA;
$arrayB = array(1,2,3);
var_dump($arrayA);
在這裏閱讀更多:
$array =& $arrayA;
它是$ array =&$ arrayA; – 2010-04-09 15:08:15
在PHP5中,所有對象都通過引用傳遞(或多或少),而不是所有變量。
$array =& $arrayA;
只有對象通過引用傳遞。如果你想簡單類型的引用,你必須使用= &的分配:
php > $var1 = 'xxxxx';
php > $var2 =& $var1;
php > $var1 = 'yyyyy';
php > echo $var2;
yyyyy
感謝大家,糾正了我的一個大錯誤 – Edward 2010-04-09 15:19:17