


Comment utiliser PHP pour réaliser une analyse régulière des URL dans les pages
Récupérez tous les liens de la page à partir de la page. Bien sûr, utiliser des expressions régulières PHP est le moyen le plus pratique. Pour écrire une expression régulière, vous devez d’abord résumer le modèle. Alors, combien de formes les liens sur la page auront-ils ? Jetons un coup d'œil ci-dessous.
Avant-propos
Un lien est un hyperlien, qui est un lien d'un élément (texte, image, vidéo, etc.) vers un autre élément (texte, image, vidéo, etc.) . Il existe généralement trois types de liens dans les pages Web. L'un est un lien hypertexte URL absolu, qui est le chemin complet vers une page ; l'autre est un lien hypertexte URL relatif, qui renvoie généralement à d'autres pages du même site Web ; un lien hypertexte dans une page, qui renvoie généralement à d'autres emplacements au sein de la même page.
Une fois que vous aurez compris les types de liens, vous saurez que pour récupérer des liens, les principaux sont les hyperliens URL absolus et les hyperliens URL relatifs. Pour écrire des expressions régulières correctes, nous devons comprendre le modèle de l’objet que nous recherchons.
Commençons par les liens absolus, également appelés URL (Uniform Resource Locators), qui identifient des ressources uniques sur Internet. La structure de l'URL contient trois parties : protocole, nom du serveur, chemin et nom du fichier .
Le protocole est un identifiant qui indique au navigateur comment gérer le fichier à ouvrir Le plus courant est le protocole http. Cet article ne considère que le protocole HTTP. Comme pour les autres protocoles https, ftp, mailto, telnet, etc., vous pouvez également les ajouter selon vos besoins.
Le nom du serveur indique au navigateur comment atteindre ce serveur, généralement un nom de domaine ou une adresse IP, et parfois un numéro de port (la valeur par défaut est 80). Dans le protocole FTP, des noms d'utilisateur et des mots de passe peuvent également être inclus, ce qui ne sera pas pris en compte dans cet article.
Le chemin et le nom du fichier, généralement séparés par /, indiquent le chemin d'accès au fichier et le nom du fichier lui-même. S'il n'y a pas de nom de fichier spécifique, le fichier par défaut dans ce dossier est accédé (peut être défini côté serveur).
Alors maintenant, il est clair que la forme typique des liens absolus à explorer peut être résumée comme suit :
<span style="color: #000000">http://www.xxx.com/xxx/yyy/zzz.html</span>
Il existe une spécification claire pour la gamme de caractères qui peut être utilisé pour chaque pièce, veuillez vous référer à la RFC1738 pour plus de détails. Ensuite, l'expression régulière peut être écrite.
/(http|https):\/\/([\w\d\-_]+[\.\w\d\-_]+)[:\d+]?([\/]?[\w\/\.]+)/i
s'explique comme suit :
(http| https) La première parenthèse correspond à la partie protocolaire.
([wd-_]+[.wd-_]+)La deuxième parenthèse correspond à la partie du nom de domaine.
([/]?[w/.]+)La troisième parenthèse correspond au chemin relatif.
Au moment de la rédaction, la plupart des URL peuvent être mises en correspondance, mais les URL avec des paramètres ne peuvent pas être explorées, ce qui peut amener la page à signaler une erreur lors d'un nouvel accès. Quels paramètres sont requis dans la spécification RFC1738 ? pour segmenter, suivi de paramètres, mais les applications RIA modernes peuvent utiliser d'autres formes étranges pour la segmentation.
Modifiez-le légèrement pour que les paramètres de requête puissent être recherchés. Cela ne couvre toujours pas toutes les situations, comme les situations où l'URL contient des caractères chinois, des espaces et d'autres caractères spéciaux, mais cela répond essentiellement à mes besoins, je n'irai donc pas plus loin.
/(http|ftp|https):\/\/([\w\d\-_]+[\.\w\d\-_]+)[:\d+]?([\/]?[\w\/\.\?=&;%@#\+,]+)/i
L'avantage d'utiliser des parenthèses est que lors du traitement des résultats, vous pouvez facilement obtenir le protocole, le nom de domaine et le chemin relatif, ce qui facilite les opérations ultérieures. traitement.
Par exemple, lorsque vous utilisez preg_match_all()
pour faire correspondre, l'index 0 du tableau de résultats correspond à tous les résultats, 1 est le protocole, 2 est le nom de domaine et 3 est le chemin relatif .
Résumé : Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.
Recommandations associées :
Comment implémenter une requête de correspondance floue multi-champs en PHP
phpmailer Comment implémenter une boîte aux lettres de liaison
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!

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

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

Se connecter à CakePHP est une tâche très simple. Il vous suffit d'utiliser une seule fonction. Vous pouvez enregistrer les erreurs, les exceptions, les activités des utilisateurs, les actions entreprises par les utilisateurs, pour tout processus en arrière-plan comme cronjob. La journalisation des données dans CakePHP est facile. La fonction log() est fournie

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c
