我正在尝试使用ucfirst
和匿名函数将array_walk
应用于数组中的单词。我想更改“原始”数组$fruits
的值。由于我不能使用传递参考,你能推荐我做什么呢?
<?php
$fruits = array('apple', 'orange', 'banana', 'cherry');
array_walk($fruits, function($a) {
$fruits = ucfirst($a);
});
var_dump($fruits);
//results
array(4) {
[0] =>
string(5) "apple"
[1] =>
string(6) "orange"
[2] =>
string(6) "banana"
[3] =>
string(6) "cherry"
}
答案 0 :(得分:5)
array_map
是一个更好的功能。
$fruits = array_map('ucfirst', $fruits);
答案 1 :(得分:3)
array_walk(
$fruits,
function(&$a) {
$a = ucfirst($a);
}
);
答案 2 :(得分:0)
您可以使用foreach循环:
$fruits = array('apple', 'orange', 'banana', 'cherry');
foreach($fruits as $key => $value)
{
$fruits[$key] = ucfirst($value);
}
答案 3 :(得分:0)
$allUpperCase = array_map(function($fruit){
return ucfirst($fruit);
}, $fruits);