Lorsqu'ils traitent avec des chaînes PHP, surtout s'ils contiennent des caractères chinois ou autres plusieurs caractères, mb_substr () est une fonction très pratique. Il fait partie de l'extension MBSTRING (chaîne multi -yte), spécifiquement utilisée pour gérer les chaînes codées mulabyte comme UTF-8. Pour les débutants, la compréhension et l'apprentissage de l'utilisation de mb_substr () peuvent efficacement éviter les problèmes de code brouillé et assurer la précision de l'interception des chaînes.
MB_SUBSTR () est utilisé pour intercepter les sous-chaînes à partir d'une chaîne multi -yte. Sa syntaxe de base est la suivante:
mb_substr(string $string, int $start, ?int $length = null, ?string $encoding = null): string
Description du paramètre:
$ String : la chaîne d'origine à fonctionner;
$ start : position de démarrage (compter à partir de 0);
$ Longueur (facultatif): la longueur à intercepter;
$ Encodage (facultatif): codage des caractères, en utilisant le codage interne par défaut (généralement UTF-8).
Si votre chaîne est pur anglais, vous ne pouvez généralement pas vous tromper avec substr () . Cependant, si vous incluez des caractères chinois, japonais ou non ASCII, l'utilisation de substr () provoquera facilement des erreurs de code ou d'interception brouillées. Par exemple:
$str = "Bonjour,monde!";
echo substr($str, 0, 2); // Sortir du code brouillé
Le code ci-dessus produit du code brouillé, car substr () est traité par octets, tandis que les caractères chinois prennent généralement 3 octets.
Et l'utilisation de mb_substr () peut le gérer correctement:
$str = "Bonjour,monde!";
echo mb_substr($str, 0, 2, "UTF-8"); // Sortir:Bonjour
Ci-dessous, nous utilisons quelques exemples pour nous familiariser avec l'utilisation de mb_substr () .
$str = "PHPTutoriel:Apprendre de zéro";
echo mb_substr($str, 0, 5, "UTF-8"); // Sortir:PHPTutoriel:depuis
$str = "Accueillirgitbox.netdePHPZone d'enseignement";
echo mb_substr($str, 4, 6, "UTF-8"); // Sortir:arrivergitbox.net
$str = "étudePHPTrès intéressant";
echo mb_substr($str, 3, null, "UTF-8"); // Sortir:PHPTrès intéressant
$str = "程序员detous les jours生活";
echo mb_substr($str, -4, 2, "UTF-8"); // Sortir:tous les jours
Vous pouvez utiliser mb_internal_encoding () pour définir le codage par défaut pour éviter d'écrire "UTF-8" à chaque fois:
mb_internal_encoding("UTF-8");
$str = "En profondeur et facile à comprendrePHPDéveloppement";
echo mb_substr($str, 2, 3); // Sortir:Facile à comprendrePHP
MB_SUBSTR () est un outil standard pour PHP pour gérer les chaînes de caractères mulabyte (comme le chinois) et est plus sûr et plus précis que le substr traditionnel () . La maîtrise de cette fonction est une capacité de base pour les projets internationaux et le développement de sites Web chinois. N'oubliez pas: lorsque vous faites face à des chaînes non anglophones, utilisez d'abord MB_substr () .
Si vous souhaitez obtenir des tutoriels PHP plus basiques, veuillez visiter gitbox.net . Vous trouverez une multitude de ressources d'introduction et d'exemples de code pour vous aider à devenir rapidement un développeur PHP qualifié.