Cet article présente principalement la méthode de comptage de la longueur des chaînes chinoises à l'aide des fonctions personnalisées PHP. Il résume et analyse les compétences opérationnelles de PHP liées à la détermination, à l'encodage et au fonctionnement du chinois sous forme d'exemples. 🎜>
Les caractères chinois comptent pour 2 caractères. Les caractères anglais comptent pour 1
/** * 可以统计中文字符串长度的函数 * */ function abslength($str) { $len=strlen($str); $i=0; while($i<$len) { if(preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/",$str[$i])) { $i+=2; } else { $i+=1; } } return $i; }
Autre : PHP détermine la longueur des caractères : chinois, anglais, chiffres.
Il existe de nombreuses façons de procéder. Enregistrez-en un simple.mb_strlen($str, 'GBK');
function StrLenW($str) { $count = 0; $len = strlen($str); for($i=0; $i<$len; $i++,$count++) if(ord($str[$i])>=128) $i++; return $count; }
/**作用:统计字符长度包括中文、英文、数字 * 参数:需要进行统计的字符串、编码格式目前系统统一使用UTF-8 * 修改记录: $str = "kds"; echo sstrlen($str,'utf-8'); * */ function sstrlen($str,$charset) { $n = 0; $p = 0; $c = ''; $len = strlen($str); if($charset == 'utf-8') { for($i = 0; $i < $len; $i++) { $c = ord($str{$i}); if($c > 252) { $p = 5; } elseif($c > 248) { $p = 4; } elseif($c > 240) { $p = 3; } elseif($c > 224) { $p = 2; } elseif($c > 192) { $p = 1; } else { $p = 0; } $i+=$p;$n++; } } else { for($i = 0; $i < $len; $i++) { $c = ord($str{$i}); if($c > 127) { $p = 1; } else { $p = 0; } $i+=$p;$n++; } } return $n; }
PHPUne méthode simple pour déterminer si une chaîne contient une autre compétence string_php
code php ci pour obtenir les valeurs de plusieurs éléments d'entrée portant le même nom dans le formulaire_php conseils
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!