我有一个这样的数组:
array(
'firstName' => 'Joe',
'lastName' => 'Smith'
)
我需要遍历数组中的每个元素,最后,数组应该如下所示:
array(
'FirstName' => 'Joe',
'LastName' => 'Smith'
)
失败的想法是:
foreach($array as $key => $value)
{
$key = ucfirst($key);
}
这显然行不通,因为数组不是按引用传递的。然而,所有这些尝试都失败了:
foreach(&$array as $key => $value)
{
$key = ucfirst($key);
}
foreach($array as &$key => $value)
{
$key = ucfirst($key);
}
我的智慧几乎就此结束。我正在使用 Magento 1.9.0.1 CE,但这与这个问题无关。如果您一定知道,我必须这样做的原因是因为我有一堆对象作为数组返回以组装到 SOAP 客户端中。我使用的 API 要求键以大写字母开头……但是,我不想将对象变量名的首字母大写。我知道这很愚蠢,但我们都会对某人负责,而且有人希望这样。
最佳答案
unset
如果它已经是正确的格式,请先取消设置,否则您将删除刚刚定义的内容:
foreach($array as $key => $value)
{
unset($array[$key]);
$array[ucfirst($key)] = $value;
}
关于php - 在 php 的 foreach 循环中更改关联数组的 $key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25068571/