我需要从一个数组中创建一个键名来引用一个不同的变量。数组对字符串的键引用?
像这样:
$keys = array('name' => 'abc');
$arr[&$keys['name']] = array();
但它不工作:(
是有什么解决办法
我需要从一个数组中创建一个键名来引用一个不同的变量。数组对字符串的键引用?
像这样:
$keys = array('name' => 'abc');
$arr[&$keys['name']] = array();
但它不工作:(
是有什么解决办法
离开&远,并确保$ ARR之前设置为一个阵列:
$arr = array();
$arr[$keys['name']] = array();
关联(或数字)索引不能引用
?只要做:
$arr[$keys['name']] = array();
取下参考:
$keys=array("name"=>"abc");
$arr=array();
$arr[$keys["name"]]=array();
var_dump($arr);
的输出是:
array(1) {
["abc"]=>
array(0) {
}
}
但是如果我更改$ keys ['name']] $ arr中的密钥名称不会更改..这就是为什么我希望它成为第一个参考 – thelolcat 2012-03-13 21:57:59
您不会更改'$ keys [“name” ]'。你还有'$ keys [“name”] ===“abc”;'。 – 2012-03-13 21:58:46
<?php
$arr = array("foo" => "bar", 12 => true);
echo $arr["foo"]; // bar
echo $arr[12]; // 1
?>
php.net/array !!!有一个文本,因为你提出一个问题,它说,你真的要搜索,因为你需要在谷歌第一个ehtry,第一个php.net < ehtry - 第一个地方寻找4个PHP的提示
只要您愿意,您无法使用引用更改数组元素的键。
您需要创建一个新的,并取消了以前:
$key = 'abc';
$array[$key] = 'value';
// to change the key:
$new_key = 'def';
$array[$new_key] = $array[$key];
unset($array[$key]);
你想要的东西,像下面的代码,但它并没有在PHP中存在不一样的是:
$key = 'abc';
$array[&$key] = 'value'; // this is not legal in PHP
$key = 'def'; // (this was supposed to change the key)
什么你究竟想达到什么目的? – Ignas 2012-03-13 21:57:16
为什么参考? – Cfreak 2012-03-13 21:58:16
,因为名称键可能会更改,而我也希望第二个数组自动更改 – thelolcat 2012-03-13 21:58:47