PHP:返回对数组元素的引用
Posted
技术标签:
【中文标题】PHP:返回对数组元素的引用【英文标题】:PHP: Return a reference to an array element 【发布时间】:2014-05-23 23:19:13 【问题描述】:php 中有没有办法返回对数组中元素的引用?
function ref(&$array, &$ref) $ref = $array[1];
$array = array(00, 11, 22, 33, 44, 55, 66, 77, 88, 99);
ref($array, $ref);
$ref = 'xxxxxxxxxx';
var_dump($ref);
var_dump($array);
我希望 $array 将按照以下代码进行更改:
$array = array(00, 11, 22, 33, 44, 55, 66, 77, 88, 99);
$ref = &$array[1];
$ref = 'xxxxxxxxxx';
var_dump($ref);
var_dump($array);
【问题讨论】:
php.net/manual/en/language.references.pass.php 如果您不是手册的朋友,请阅读这个相当不错的 SO 答案***.com/questions/2030906/… 查看此文档:php.net/manual/en/language.references.arent.php 【参考方案1】:我找到了两种方法来返回对数组元素的引用:
1。使用按引用返回和 =&
function & ref(&$array)
return $array[1];
$array = array(00, 11, 22, 33, 44, 55, 66, 77, 88, 99);
$ref =& ref($array);
$ref = 'xxxxxxxxx';
var_dump($ref);
var_dump($array);
2。将引用放入数组
function ref(&$array, &$ref = array())
$ref = array();
$ref[] = &$array[1];
$array = array(00, 11, 22, 33, 44, 55, 66, 77, 88, 99);
ref($array, $ref);
$ref[0] = 'xxxxxxxxx';
var_dump($ref);
var_dump($array);
【讨论】:
以上是关于PHP:返回对数组元素的引用的主要内容,如果未能解决你的问题,请参考以下文章