Heim > Artikel > Backend-Entwicklung > PHP-Entwicklungstipps (7) – Codebeispiel zum Ermitteln des ersten Pinyin-Buchstabens chinesischer Schriftzeichen
Manchmal müssen wir während unseres Projektentwicklungsprozesses einen bestimmten Datensatz nach Chinesisch sortieren. Dazu müssen wir zuerst die Anfangsbuchstaben dieser chinesischen Schriftzeichen ermitteln und sie dann sortieren. Dies ist die allgemeine Methode zur Lösung solcher Probleme in der Zukunft. Da der Autor zu diesem Zeitpunkt relativ wenig Erfahrung hatte, suchte ich nach vielen Methoden, um dieses Problem zu lösen. Schließlich fand ich diese Codefolge im Internet Ich habe den ersten Brief erhalten und bin dann gerade dabei, zu filmen.
Der Code lautet wie folgt:
<?php /** * ======================================= * Created by Zhihua_W. * Author: Zhihua_W * Date: 2016/12/6 0007 * Time: 上午 8:46 * Project: PHP开发小技巧 * Power: 获取中文字符拼音首字母 * ======================================= */ /** * 获取中文字符拼音首字母 * @param $str 中文字符 * @return null|string */ function getFirstCharter($str) { if (empty($str)) { return ''; } $fchar = ord($str{0}); if ($fchar >= ord('A') && $fchar <= ord('z')) return strtoupper($str{0}); $s1 = iconv('UTF-8', 'gb2312', $str); $s2 = iconv('gb2312', 'UTF-8', $s1); $s = $s2 == $str ? $s1 : $str; $asc = ord($s{0}) * 256 + ord($s{1}) - 65536; if ($asc >= -20319 && $asc <= -20284) return 'A'; if ($asc >= -20283 && $asc <= -19776) return 'B'; if ($asc >= -19775 && $asc <= -19219) return 'C'; if ($asc >= -19218 && $asc <= -18711) return 'D'; if ($asc >= -18710 && $asc <= -18527) return 'E'; if ($asc >= -18526 && $asc <= -18240) return 'F'; if ($asc >= -18239 && $asc <= -17923) return 'G'; if ($asc >= -17922 && $asc <= -17418) return 'H'; if ($asc >= -17417 && $asc <= -16475) return 'J'; if ($asc >= -16474 && $asc <= -16213) return 'K'; if ($asc >= -16212 && $asc <= -15641) return 'L'; if ($asc >= -15640 && $asc <= -15166) return 'M'; if ($asc >= -15165 && $asc <= -14923) return 'N'; if ($asc >= -14922 && $asc <= -14915) return 'O'; if ($asc >= -14914 && $asc <= -14631) return 'P'; if ($asc >= -14630 && $asc <= -14150) return 'Q'; if ($asc >= -14149 && $asc <= -14091) return 'R'; if ($asc >= -14090 && $asc <= -13319) return 'S'; if ($asc >= -13318 && $asc <= -12839) return 'T'; if ($asc >= -12838 && $asc <= -12557) return 'W'; if ($asc >= -12556 && $asc <= -11848) return 'X'; if ($asc >= -11847 && $asc <= -11056) return 'Y'; if ($asc >= -11055 && $asc <= -10247) return 'Z'; return null; } echo getFirstCharter('为'); ?>
Sie können den Test selbst durchführen, um spezifische Ergebnisse zu erhalten!
Das obige ist der detaillierte Inhalt vonPHP-Entwicklungstipps (7) – Codebeispiel zum Ermitteln des ersten Pinyin-Buchstabens chinesischer Schriftzeichen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!