SymfonyWorld Online 2022 Winter Edition

Introduction

Les fonctions fournies par cette extension vérifient si un caractère ou une chaîne appartient à une certaine classe de caractères, suivant la configuration locale courante (voir aussi la fonction setlocale()).

Lorsqu'appelées avec un entier comme argument, ces fonctions se comportent exactement comme leur équivalent C du fichier ctype.h. Cela signifie que si un nombre entier inférieur à 256 est passé, l'équivalent ASCII de la valeur sera utilisé afin de vérifier s'il se situe bien dans l'intervalle (les chiffres sont dans l'intervalle 0x30-0x39). Si le nombre se situe entre -128 et -1 inclus, alors 256 sera ajouté et la vérification se fera sur le résultat.

Avertissement

À partir de PHP 8.1.0, passer un argument différent d'une chaîne est obsolète. À l'avenir, l'argument sera interprété comme une chaîne de caractères au lieu d'un point de code ASCII. Selon le comportement souhaité, l'argument doit être transtypé en chaîne de caractères ou un appel explicite à chr() doit être effectué.

Lorsqu'appelées avec une chaîne comme argument, ces fonctions vérifient chaque caractère de la chaîne et ne retourneront true que si chacun des caractères correspond aux critères. Lorsque appelé avec une chaîne vide, le résultat sera toujours false.

Si l'on passe autre chose qu'une chaîne ou un entier, false est retourné immédiatement.

Il est important de garder à l'esprit que les fonctions ctype sont toujours préférées pour les expressions rationnelles ainsi que pour les fonctions préfixées pas "str_*" et "is_*". En effet, ctype utilisant la bibliothèque native C, le traitement est extrêmement rapide.

Note:

Ces fonctions ne sont absolument pas relatives à la bibliothèque Python "ctypes". Les noms des fonctions sont relatives à l'en-tête du fichier C ctype.h où les fonctions C équivalentes sont définies.

Cette extension est antérieure à "ctypes" Python, aussi, toute confusion causée par cette dénomination est loin d'être la faute de PHP.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top