Texte :
L'expression régulière est un outil utilisé pour faire correspondre des chaînes. Les expressions régulières peuvent être utilisées pour valider la saisie, rechercher du texte de remplacement ou extraire les informations requises. Les expressions régulières en PHP sont très utiles lorsque l'on travaille avec des chaînes.
Cependant, certains cas particuliers nécessitent une attention particulière lorsqu'il s'agit de noms de fichiers ou d'URL. Si vous utilisez la fonction preg_match commune de PHP pour faire correspondre les noms de fichiers se terminant par .php, vous risquez de rencontrer des problèmes. Par exemple, supposons que vous souhaitiez faire correspondre un fichier nommé "exemple.php" :
$file = 'example.php'; if (preg_match('/\.php$/', $file)) { echo "File is a PHP file"; } else { echo "File is not a PHP file"; }
Exécutez le code ci-dessus, vous constaterez que "Le fichier est un fichier PHP" est affiché. Cependant, si vous essayez de faire correspondre un fichier nommé "exemple2php" :
$file = 'example2php'; if (preg_match('/\.php$/', $file)) { echo "File is a PHP file"; } else { echo "File is not a PHP file"; }
vous constaterez que le résultat est "Le fichier est un fichier PHP", ce qui est en fait un résultat incorrect. En effet, dans le deuxième exemple, la chaîne « exemple2php » se termine également par la chaîne « .php ». Pour éviter cela, nous avons besoin d’expressions régulières plus précises.
Une meilleure solution consiste à faire correspondre uniquement les mots complets se terminant par .php. Pour y parvenir, nous pouvons utiliser les limites de mots (b), qui peuvent être utilisées pour faire correspondre le début ou la fin d'un mot. De cette façon, notre code peut être modifié en :
$file = 'example.php'; if (preg_match('/\.php\b/', $file)) { echo "File is a PHP file"; } else { echo "File is not a PHP file"; }
Exécutez le code ci-dessus et vous constaterez que le résultat est correct. Si vous réessayez en utilisant le test de chaîne de "example2php", vous constaterez que le résultat sera "Le fichier n'est pas un fichier PHP".
Vous savez maintenant comment faire correspondre correctement les chaînes se terminant par .php, mais ce n'est pas tout ce à quoi il faut prêter attention. Parfois, vous devrez peut-être faire correspondre une chaîne telle que « example.class.php » ou « example.php5 ». Pour résoudre ces cas particuliers, on peut utiliser des groupes dans les expressions régulières. Par exemple, si vous souhaitez faire correspondre les noms de fichiers se terminant par ".php", ".php4", ".php5" ou ".phtml", vous pouvez écrire comme ceci :
$file = 'example.php5'; if (preg_match('/\.(php|php4|php5|phtml)$/', $file)) { echo "File is a PHP file"; } else { echo "File is not a PHP file"; }
Dans le code ci-dessus, nous avons utilisé le groupe (php |php4|php5|phtml), ce qui signifie que nous n'avons besoin que d'écrire des groupes dans l'expression régulière pour faire correspondre plusieurs chaînes. Nous avons également utilisé le signe $, ce qui signifie qu'il doit se terminer par la chaîne correspondant.
En conclusion, les expressions régulières sont non seulement très utiles en PHP, elles constituent également un outil important pour travailler avec des chaînes dans de nombreux autres langages de programmation. Lorsque vous travaillez avec des noms de fichiers ou des URL, portez une attention particulière aux détails et essayez d'utiliser des groupes et des limites pour vous assurer que votre expression régulière correspond à ce dont vous avez besoin. Si vous débutez avec les expressions régulières, nous vous recommandons d'en savoir plus sur les expressions régulières pour comprendre leur fonctionnement et leur syntaxe.
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!

Cet article explore la déduplication efficace du tableau PHP. Il compare les fonctions intégrées comme Array_Unique () avec les approches de hashmap personnalisées, mettant en évidence les compromis de performances en fonction de la taille du tableau et du type de données. La méthode optimale dépend de Profili

Cet article explore la déduplication du tableau PHP en utilisant l'unicité clé. Bien qu'il ne s'agisse pas d'une méthode de suppression en double directe, la mise à profit de l'unicité clé permet de créer un nouveau tableau avec des valeurs uniques en mappant des valeurs aux clés, en écrasant des doublons. Ce AP

Cet article analyse la déduplication du tableau PHP, mettant en évidence les goulots d'étranglement des performances des approches naïves (O (n²)). Il explore des alternatives efficaces à l'aide d'Array_Unique () avec des fonctions personnalisées, des implémentations SplobjectStorage et HashSet, réalisant

Cet article détaille la mise en œuvre des files d'attente de messages en PHP à l'aide de RabbitMQ et Redis. Il compare leurs architectures (AMQP vs en mémoire), les fonctionnalités et les mécanismes de fiabilité (confirmations, transactions, persistance). Meilleures pratiques de conception, erreur

Cet article examine les normes de codage PHP actuelles et les meilleures pratiques, en se concentrant sur les recommandations PSR (PSR-1, PSR-2, PSR-4, PSR-12). Il met l'accent

Cet article détaille l'installation et le dépannage des extensions de PHP, en se concentrant sur PECL. Il couvre les étapes d'installation (trouver, télécharger / compilation, activer, redémarrer le serveur), dépannage des techniques (vérification des journaux, vérification de l'installation,

Cet article explore l'optimisation de la déduplication du tableau PHP pour les grands ensembles de données. Il examine des techniques comme Array_Unique (), Array_flip (), SploBjectStorage et Pre-Sorting, en comparant leur efficacité. Pour les ensembles de données massifs, il suggère de secouer, datab

Cet article explique l'API de réflexion de PHP, permettant l'inspection d'exécution et la manipulation des classes, des méthodes et des propriétés. Il détaille les cas d'utilisation courants (génération de documentation, ORMS, injection de dépendance) et prévient contre la performance Overhea


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

Dreamweaver Mac
Outils de développement Web visuel

PhpStorm version Mac
Le dernier (2018.2.1) outil de développement intégré PHP professionnel

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.
