首先在数组中每个第一个字符大写

时间:2010-07-23 04:56:01

标签: php arrays

我正在尝试将PHP数组中的所有第一个字符设为大写。

PHP代码:

<?php
$ordlista = file_get_contents('C:/wamp/www/bilder/filmlista.txt');

$ord = explode("\n", $ordlista);

sort($ord,SORT_STRING);

foreach ($ord as $key => $val) {
    echo $val."<br/>";
}
?>

先谢谢你的回答!

解决:

<?php
$ordlista = file_get_contents('C:/wamp/www/bilder/filmlista.txt');

$ord = explode("\n", $ordlista);

$ord=array_map(function($word) { return ucwords($word); }, $ord);


sort($ord,SORT_STRING);

foreach ($ord as $key => $val) {
    echo $val."<br/>";
}
?>

3 个答案:

答案 0 :(得分:41)

$ord = array_map('ucfirst', $ord);

答案 1 :(得分:19)

$ord=array_map(function($word) { return ucfirst($word); }, $ord);

答案 2 :(得分:3)

要支持UTF-8多字节字符,例如“俄语”,您需要

$ord = array_map(function($str){
    return mb_strtoupper(mb_substr($str, 0, 1)).mb_strtolower(mb_substr($str, 1));
}, $ord);

这使用https://stackoverflow.com/a/14161325/175071

中的mb_ucfirst函数