$arr = array ('name'=>'bunt','game'=>'battlefield','fame'=>'hero');
foreach ($arr as $key=>$val){
$val = ucfirst($val);
}
var_dump($arr);
// result would be
// 'name' => 'Bunt', 'game' => 'Battlefield', 'fame' => 'Hero'
我在这里错过了一些东西....如何实现呢?
使用array_map()
$new_array = array_map('ucfirst', $arr);
实际操作
$val
只是每次迭代中的临时变量。要更新每个键的值,需要将其作为引用传递。这样做。
foreach ($arr as $key => &$val) {
$val = ucfirst($val);
}
注意&
在$val
后面。
foreach (arr关键=>美元和美元val) {$val = ucfirst($val);}
加&在$val前签名。这将使它引用变量而不是赋值。
为什么不直接使用键来访问数组呢?
<?php
$arr = array('name' => 'bunt', 'game' => 'battlefield');
foreach ($arr as $key => $val) {
$arr[$key] = ucfirst($val);
}
var_dump($arr);