Aller au contenu

preg_last_error()

Introduction

Les expressions régulières sont un outil puissant pour manipuler et rechercher des chaînes de caractères en PHP. Parfois, les opérations de regex échouent en raison de motifs invalides ou de limites du moteur. La fonction preg_last_error() permet d'identifier ces échecs en renvoyant le code d'erreur de l'appel de fonction PCRE le plus récent.

Comprendre la fonction preg_last_error()

La fonction preg_last_error() renvoie un entier représentant le code d'erreur de la dernière exécution d'une expression régulière. Elle retourne PREG_NO_ERROR (0) si l'opération a réussi. Les constantes d'erreur courantes incluent PREG_INTERNAL_ERROR, PREG_BACKTRACK_LIMIT_ERROR et PREG_BAD_UTF8_ERROR. Notez que depuis PHP 7.2, vous pouvez également utiliser preg_last_error_msg() pour obtenir une chaîne d'erreur lisible par un humain.

Comprendre la fonction preg_last_error()

php
preg_last_error();

La fonction renvoie une valeur entière représentant le code d'erreur.

Exemple d'utilisation

Regardons un exemple pour comprendre l'utilisation de la fonction preg_last_error() en PHP :

Exemple d'utilisation de PHP preg_last_error()

php
<?php

$pattern = '/^(.*)(\d{4})$/';
$string = 'This is a test 1234';

$result = preg_match($pattern, $string, $matches);

if ($result === false) {
    $error = preg_last_error();
    echo 'Error code: ' . $error;
} elseif ($result === 1) {
    echo 'Match found.';
} else {
    echo 'No match.';
}

Dans l'exemple ci-dessus, nous avons un motif d'expression régulière qui correspond à une chaîne contenant quatre chiffres à la fin. Nous utilisons ensuite la fonction preg_match() pour rechercher une correspondance dans la chaîne. Si une correspondance est trouvée, nous affichons "Correspondance trouvée.". Si la fonction retourne false, nous utilisons preg_last_error() pour obtenir le code d'erreur PCRE réel. Sinon, nous gérons le cas simple de non-correspondance.

Conclusion

La fonction preg_last_error() est essentielle pour déboguer les opérations de regex en PHP. En vérifiant les retours false et en inspectant le code d'erreur, les développeurs peuvent rapidement distinguer les échecs du moteur des simples non-correspondances. Nous espérons que cet article vous a fourni une vue d'ensemble complète de la fonction preg_last_error() en PHP et de son utilisation. Si vous avez des questions ou besoin d'aide supplémentaire, n'hésitez pas à demander.

Pratique

Que fait la fonction 'preg_last_error' en PHP ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.