在PHP中,將一個漢字數組按照拼音首字母進行排序


(之前發的這篇博文因為含有敏感關鍵字,只好重發一遍了)

<?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中,將一個漢字數組按照拼音首字母進行排序

知識點:

  1. PHP官方手冊,多字節字符處理 mb_string;
  2. var_expost函數,輸出關於傳遞給該函數的變量的結構信息,與var_dump的區別是其輸出的是合法的php代碼。若第二個參數設置為true,則從而返回變量的表示;
  3. mb_substr(),獲取部分字符串,與substr不同的是,這個函數的分割是以完整的字符分割,而substr是以字節來分割的;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM