PHPでは、漢字の配列をピンインの頭文字で並べ替えます

2751 ワード

(前に出したこのブログは敏感なキーワードが含まれているので、もう一度やり直すしかありません)
php

$str = "           ,         ,        ,     ,      ,           。";

$len = mb_strlen($str);
$sta = [];
for($i = 0; $i<$len; $i++){
    $tmp = mb_substr($str,$i,1);
    if($tmp != " "){
        array_push($sta,$tmp);
    }
}

//        gbk  ,            ,      ,           
$sta = eval('return '.mb_convert_encoding(var_export($sta,true), "gbk","utf-8").";");
//        
sort($sta);
//        utf-8  
$sta = eval('return '.mb_convert_encoding(var_export($sta,true), "utf-8", "gbk").";");

var_dump($sta);

 
PHPでは、漢字の配列をピンインの頭文字で並べ替えます
知識点:
  • PHP公式マニュアル、マルチバイト文字処理mb_string;
  • var_expost関数は、その関数に渡される変数に関する構造情報をvar_と出力するdumpの違いは,その出力が合法的なphpコードであることである.2番目のパラメータがtrueに設定されると、変数の表示が返されます.
  • mb_substr()は、部分文字列を取得し、substrとは異なり、この関数の分割は完全な文字で分割され、substrはバイトで分割される.

  •  
    転載先:https://www.cnblogs.com/praglody/p/6730694.html