Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie eine URL in ein Array in PHP

So konvertieren Sie eine URL in ein Array in PHP

PHPz
PHPzOriginal
2023-04-26 14:26:47916Durchsuche

In PHP müssen wir manchmal eine URL in ein nützliches Array umwandeln, damit wir daraus Informationen über die Seite erhalten können. In diesem Artikel erfahren Sie, wie Sie mithilfe von PHP-Funktionen eine URL in ein Array konvertieren.

Das Konvertieren einer URL in ein Array erfordert die Verwendung der Funktionen parse_url() und parse_str() in PHP. Die Funktion Parse_url() zerlegt die URL in Teile, und die Funktion parse_str() zerlegt die Abfragezeichenfolge und wandelt sie in ein assoziatives Array um.

Schauen wir uns zunächst die Syntax der Funktion parse_url() an:

parse_url($url, $component);

In dieser Syntax ist der Parameter $url die zu zerlegende URL und der Parameter $component die zurückzugebende URL-Komponente. Der $component-Parameter ist optional und kann einer der folgenden sein:

  • PHP_URL_SCHEME – Protokoll (wie http, https usw.)
  • PHP_URL_HOST – Domänenname oder IP-Adresse
  • PHP_URL_PORT – Portnummer
  • PHP_URL_USER – Benutzername
  • PHP_URL_PASS – Passwort
  • PHP_URL_PATH – URL-Pfad
  • PHP_URL_QUERY – Abfragezeichenfolge
  • PHP_URL_FRAGMENT – Fragment-ID

Wenn der Parameter $component nicht angegeben ist, gibt die Funktion parse_url() ein assoziatives Array zurück, das die URLs enthält Alle Teile .

Hier ist ein Beispielcode, der zeigt, wie man die Funktion parse_url() verwendet, um eine URL in ihre Bestandteile zu zerlegen:

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

echo "<pre class="brush:php;toolbar:false">";
print_r($url_parts);
echo "
";

Der obige Code erzeugt die folgende Ausgabe:

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

Als nächstes konvertieren wir die Abfragezeichenfolge mithilfe von Die Funktion parse_str() ist ein assoziatives Array. Die Syntax der Funktion parse_str() lautet wie folgt:

parse_str($query, $result);

In dieser Syntax ist der Parameter $query die zu zerlegende Abfragezeichenfolge und der Parameter $result das assoziative Array zum Speichern der konvertierten Abfragezeichenfolge.

Hier ist ein Beispielcode, der zeigt, wie man mit der Funktion parse_str() eine Abfragezeichenfolge in ein assoziatives Array umwandelt:

$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 class="brush:php;toolbar:false">";
print_r($query);
echo "
";

Der obige Code erzeugt die folgende Ausgabe:

Array
(
    [id] => 1
    [name] => john
)

Abschließend verwenden wir parse_url() Funktion und parse_str() Die Funktion wandelt eine URL in ein assoziatives Array um, das alle Komponenten der URL und die Abfragezeichenfolge enthält.

Hier ist der Beispielcode zum Konvertieren einer URL in ein Array:

$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 class="brush:php;toolbar:false">";
print_r($result);
echo "
";

Der obige Code erzeugt die folgende Ausgabe:

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
        )

)

Jetzt haben wir eine URL erfolgreich in ein assoziatives Array konvertiert, das alle Komponenten der URL enthält und die Abfragezeichenfolge !

Zusammenfassung:

In PHP können Sie URLs mithilfe der Funktionen parse_url() und parse_str() ganz einfach in ein Array konvertieren. Diese Methode ist sehr nützlich, da sie es uns ermöglicht, die benötigten Informationen aus der URL zu extrahieren. Wir können das konvertierte Array verwenden, um verschiedene Aufgaben auszuführen, z. B. das Generieren von Sitemaps oder das Extrahieren nützlicher SEO-Informationen.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie eine URL in ein Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn