この記事では、主にphpで文字列の最初の文字を取得する方法を紹介します。これは、中国語の文字列の操作をサポートし、phpの文字列操作のスキルを含みます。特定の基準値があり、友達がそれを参照することができます
この記事の例では、PHP で文字列の最初の文字を取得する方法を説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
$limit = array( //gb2312 ピンイン並べ替え 配列(45217,45252), //A 配列(45253,45760), //B 配列(45761,46317), //C 配列(46318,46825)、//D 配列(46826,47009), //E 配列(47010,47296), //F array(47297,47613), //G array(47614,48118), //H array(0,0), //I 配列(48119,49061), //J 配列(49062,49323), //K 配列(49324,49895), //L 配列(49896,50370), //M 配列(50371,50613), //N 配列(50614,50621), //O 配列(50622,50905), //P array(50906,51386), //Q 配列(51387,51445), //R 配列(51446,52217)、//S 配列(52218,52697), //T array(0,0), //U 配列(0,0), //V 配列(52698,52979), //W 配列(52980,53688), //X 配列(53689,54480), //Y 配列(54481,55289), //Z ); $str="A:これはテスト プログラム 1"; $str= iconv("UTF-8","gb2312", $str); echo $str.""; $i=0; while($i $tmp=bin2hex(substr($str,$i,1)); if($tmp>='B0'){ //漢字の始まり $t=getLetter(hexdec(bin2hex(substr($str,$i,2)))); printf("%c",$t==-1 ? '*' : $t ); $i+=2; } その他{ printf("%s",substr($str,$i,1)); $i++; } } 関数 getLetter($num){ グローバル $limit; $char_index=65; foreach($limit as $k=>$v){ if($num>=$v[0] && $num
$char_index+=$k; $char_index を返す; } } -1 を返す; } ?> |
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。