代码之家  ›  专栏  ›  技术社区  ›  Victor Bjelkholm

使数组中的每个字符都大写

  •  17
  • Victor Bjelkholm  · 技术社区  · 15 年前

    我试图让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 回复  |  直到 15 年前
        1
  •  55
  •   iroel    15 年前
    $ord = array_map('ucfirst', $ord);
    
        2
  •  19
  •   icktoofay pcp    15 年前
    $ord=array_map(function($word) { return ucfirst($word); }, $ord);
    
        3
  •  3
  •   Community CDub    8 年前

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

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

    它使用 mb_ucfirst 函数来自 https://stackoverflow.com/a/14161325/175071