Comment PHP détermine plusieurs caractères chinois : Créez d'abord un exemple de fichier PHP ; puis utilisez la méthode "mb_strimwidth($post_excerpt,0,240,'...','utf-8');" de caractères chinois C'est tout.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
Comment PHP détermine-t-il plusieurs caractères chinois ? Comment compter correctement le nombre de caractères chinois en PHP
Comment compter correctement le nombre de caractères chinois en PHP ? C'est un problème qui me préoccupe depuis longtemps. Il existe de nombreuses fonctions en PHP qui peuvent calculer la longueur d'une chaîne. Par exemple, dans l'exemple suivant, trois fonctions, strlen, mb_strlen et mb_strwidth, sont utilisées pour tester. et comptez la longueur d'une chaîne. Voyons comment calculer la longueur d'une chaîne en chinois en plusieurs octets :
echo strlen("你好ABC") . ""; # 输出 9 echo mb_strlen("你好ABC", 'UTF-8') . ""; # 输出 5 echo mb_strwidth("你好ABC") . ""; #输出 7
D'après le test ci-dessus, nous pouvons voir que strlen compte les caractères chinois sur 3 octets, mb_strlen. compte pour 1 octet quel que soit le chinois ou l'anglais, et mb_strwidth le chinois compte pour 2 octets, donc mb_strwidth est ce que nous voulons : 2 octets pour le chinois et 1 octet pour l'anglais.
Il est également recommandé d'utiliser mb_strimwidth pour intercepter les chaînes, qui est également calculée selon la méthode de 2 octets pour le chinois et 1 octet pour l'anglais. Si le nombre de mots dépasse les exigences d'interception, cette fonction peut également. sera automatiquement ajouté à la fin '…'.
mb_strimwidth($post_excerpt,0,240,'...','utf-8');
Notez que l'ajout du paramètre d'encodage « utf-8 » à la fin peut éviter le problème de l'interception chinoise tronquée.
Apprentissage recommandé : "Tutoriel vidéo PHP"
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!