Maison développement back-end Problème PHP Comment convertir une URL en tableau en php

Comment convertir une URL en tableau en php

Apr 26, 2023 pm 02:26 PM

En PHP, nous avons parfois besoin de convertir une URL en un tableau utile afin de pouvoir en obtenir des informations sur la page. Dans cet article, nous apprendrons comment convertir une URL en tableau à l'aide des fonctions PHP.

Pour convertir une URL en tableau, vous devez utiliser la fonction parse_url() et la fonction parse_str() en PHP. La fonction Parse_url() divise l'URL en parties et la fonction parse_str() divise la chaîne de requête et la convertit en un tableau associatif.

Tout d'abord, regardons la syntaxe de la fonction parse_url() :

parse_url($url, $component);
Copier après la connexion

Dans cette syntaxe, le paramètre $url est l'URL à décomposer, et le paramètre $component est le composant URL à renvoyer. Le paramètre $component est facultatif, il peut être l'un des éléments suivants :

  • PHP_URL_SCHEME - protocole (comme http, https, etc.)
  • PHP_URL_HOST - nom de domaine ou adresse IP
  • PHP_URL_PORT - numéro de port
  • PHP_URL_USER - nom d'utilisateur
  • PHP_URL_PASS - Mot de passe
  • PHP_URL_PATH - Chemin de l'URL
  • PHP_URL_QUERY - Chaîne de requête
  • PHP_URL_FRAGMENT - Identifiant du fragment

Si le paramètre $component n'est pas spécifié, la fonction parse_url() renverra un tableau associatif contenant l'URL Toutes les pièces .

Voici un exemple de code qui montre comment utiliser la fonction parse_url() pour diviser une URL en ses composants :

$url = "http://www.example.com/index.php?id=1&name=john#about";
$url_parts = parse_url($url);

echo "<pre>";
print_r($url_parts);
echo "</pre>";
Copier après la connexion

Le code ci-dessus produira le résultat suivant :

Array
(
    [scheme] => http
    [host] => www.example.com
    [path] => /index.php
    [query] => id=1&name=john
    [fragment] => about
)
Copier après la connexion

Ensuite, nous convertissons la chaîne de requête en utilisant le La fonction parse_str() est un tableau associatif. La syntaxe de la fonction parse_str() est la suivante :

parse_str($query, $result);
Copier après la connexion

Dans cette syntaxe, le paramètre $query est la chaîne de requête à décomposer, et le paramètre $result est le tableau associatif pour enregistrer la chaîne de requête convertie.

Voici un exemple de code qui montre comment convertir une chaîne de requête en tableau associatif à l'aide de la fonction parse_str() :

$url = "http://www.example.com/index.php?id=1&name=john#about";
$url_parts = parse_url($url);
parse_str($url_parts['query'], $query);

echo "<pre>";
print_r($query);
echo "</pre>";
Copier après la connexion

Le code ci-dessus produira le résultat suivant :

Array
(
    [id] => 1
    [name] => john
)
Copier après la connexion

Enfin, nous utiliserons parse_url() function et parse_str() La fonction convertit une URL en un tableau associatif contenant tous les composants de l'URL et de la chaîne de requête.

Voici l'exemple de code pour convertir une URL en tableau :

$url = "http://www.example.com/index.php?id=1&name=john#about";
$url_parts = parse_url($url);
parse_str($url_parts['query'], $query);
$result = array(
    'scheme' => $url_parts['scheme'],
    'host' => $url_parts['host'],
    'port' => $url_parts['port'],
    'user' => $url_parts['user'],
    'pass' => $url_parts['pass'],
    'path' => $url_parts['path'],
    'query' => $url_parts['query'],
    'fragment' => $url_parts['fragment'],
    'query_array' => $query
);

echo "<pre>";
print_r($result);
echo "</pre>";
Copier après la connexion

Le code ci-dessus produira le résultat suivant :

Array
(
    [scheme] => http
    [host] => www.example.com
    [port] =>
    [user] =>
    [pass] =>
    [path] => /index.php
    [query] => id=1&name=john
    [fragment] => about
    [query_array] => Array
        (
            [id] => 1
            [name] => john
        )

)
Copier après la connexion

Maintenant, nous avons réussi à convertir une URL en un tableau associatif qui contient tous les composants de l'URL. et la chaîne de requête !

Résumé :

En PHP, vous pouvez facilement convertir une URL en tableau à l'aide de la fonction parse_url() et de la fonction parse_str(). Cette méthode est très utile car elle nous permet d'extraire les informations dont nous avons besoin de l'URL. Nous pouvons utiliser le tableau converti pour effectuer diverses tâches telles que générer des plans de site ou extraire des informations SEO utiles.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Quelles sont les meilleures pratiques pour la déduplication des tableaux PHP Quelles sont les meilleures pratiques pour la déduplication des tableaux PHP Mar 03, 2025 pm 04:41 PM

Quelles sont les meilleures pratiques pour la déduplication des tableaux PHP

La déduplication PHP Array peut-elle profiter de l'unicité du nom clé? La déduplication PHP Array peut-elle profiter de l'unicité du nom clé? Mar 03, 2025 pm 04:51 PM

La déduplication PHP Array peut-elle profiter de l'unicité du nom clé?

Quelles sont les dernières normes de codage PHP et les meilleures pratiques? Quelles sont les dernières normes de codage PHP et les meilleures pratiques? Mar 10, 2025 pm 06:16 PM

Quelles sont les dernières normes de codage PHP et les meilleures pratiques?

La déduplication du tableau PHP doit-elle être prise en compte pour les pertes de performance? La déduplication du tableau PHP doit-elle être prise en compte pour les pertes de performance? Mar 03, 2025 pm 04:47 PM

La déduplication du tableau PHP doit-elle être prise en compte pour les pertes de performance?

Quelles sont les techniques d'optimisation pour la déduplication des tableaux PHP Quelles sont les techniques d'optimisation pour la déduplication des tableaux PHP Mar 03, 2025 pm 04:50 PM

Quelles sont les techniques d'optimisation pour la déduplication des tableaux PHP

Comment puis-je travailler avec les extensions de PHP et PECL? Comment puis-je travailler avec les extensions de PHP et PECL? Mar 10, 2025 pm 06:12 PM

Comment puis-je travailler avec les extensions de PHP et PECL?

Comment implémenter les files d'attente de messages (Rabbitmq, Redis) dans PHP? Comment implémenter les files d'attente de messages (Rabbitmq, Redis) dans PHP? Mar 10, 2025 pm 06:15 PM

Comment implémenter les files d'attente de messages (Rabbitmq, Redis) dans PHP?

Comment utiliser la réflexion pour analyser et manipuler le code PHP? Comment utiliser la réflexion pour analyser et manipuler le code PHP? Mar 10, 2025 pm 06:12 PM

Comment utiliser la réflexion pour analyser et manipuler le code PHP?

See all articles