【发布时间】:2015-03-31 09:55:37
【问题描述】:
是否有一个我错过的 PHP 函数在给定其子数组的键名(关联数组)时会更改父数组的键,或者至少有一个替代我正在使用的 foreach 循环的方法改变键的时刻。
示例数组
$arr = array(
array(
'id' => 1,
'name' => 'one',
),
array(
'id' => 2,
'name' => 'two',
),
array(
'id' => 3,
'name' => 'three',
)
);
我希望它像这样工作..
$arr_name = array_change_key($arr,'name');
print_r($arr_name);
$arr_name => array(
'one', => array(
'id' => 1,
'name' => 'one',
),
'two' => array(
'id' => 2,
'name' => 'two',
),
'three' => array(
'id' => 3,
'name' => 'three',
)
);
//$arr is unchanged
这只是一个额外的额外(不确定是否可能)
array_change_key($arr,'name');
print_r($arr);
//$arr has changed because it doesn't have a variable to set
$arr => array(
'one', => array(
'id' => 1,
'name' => 'one',
),
'two' => array(
'id' => 2,
'name' => 'two',
),
'three' => array(
'id' => 3,
'name' => 'three',
)
);
print_r($arr[0]); //undefined index
【问题讨论】:
-
您希望输出是什么数组格式?
-
我稍微改变了问题,这有帮助吗?
标签: php arrays pass-by-reference