Heim > Backend-Entwicklung > PHP-Tutorial > PHP ruft die Parameter jedes Teils der URL ab

PHP ruft die Parameter jedes Teils der URL ab

little bottle
Freigeben: 2023-04-05 20:56:01
nach vorne
10495 Leute haben es durchsucht

URL ist ein einheitlicher Ressourcen-Locator, eine prägnante Darstellung des Standorts und der Zugriffsmethode der im Internet verfügbaren Ressourcen und eine Standardressource für die Internetadresse . In diesem Artikel wird erläutert, wie Sie PHP-Funktionen verwenden, um die Parameter jedes Teils der URL abzurufen.

parse_url()

Diese Funktion kann eine URL analysieren und ihre Bestandteile zurückgeben. Sie wird wie folgt verwendet:

array parse_url(string $url)
Nach dem Login kopieren

Diese Funktion gibt ein assoziatives Array zurück, das die verschiedenen Komponenten der vorhandenen URL enthält. Fehlt eine dieser Komponenten, wird für diese Komponente kein Array-Eintrag erstellt. Die Komponenten sind:

  • Schema – z. B. http
  • Host – z. B. localhost
  • Port – z. B. 80
  • Benutzer
  • Pfad – wie /parse_str.php
  • Abfrage – nach dem Fragezeichen? wie id=1&category=php&title=php-install
  • Fragment – ​​nach dem Hash-Symbol #

Diese Funktion bedeutet nicht, dass die angegebene URL gültig ist, sie trennt lediglich die Teile in der obigen Liste. parse_url() akzeptiert unvollständige URLs und versucht, diese korrekt zu analysieren. Diese Funktion hat keine Auswirkung auf relative Pfad-URLs.

<?php
    $url = "http://52php.cnblogs.com/welcome/";
    $parts = parse_url($url);
     
    print_r($parts);
?>
Nach dem Login kopieren

Das Ergebnis der Programmausführung ist wie folgt:

Array
(
    [scheme] => http
    [host] => 52php.cnblogs.com 
    [path] => /welcome/
)
Nach dem Login kopieren
<?php
    $url = &#39;http://username:password@hostname/path?arg=value#anchor&#39;;
    print_r(parse_url($url));
    echo &#39;<br />&#39;;
    echo parse_url($url, PHP_URL_PATH);
?>
Nach dem Login kopieren


Programmausgabe:

Array
(
    [scheme] => http
    [host] => hostname
    [user] => username
    [pass] => password
    [path] => /path
    [query] => arg=value
    [fragment] => anchor
)
Nach dem Login kopieren


Wie Sie sehen, ist es einfach, die verschiedenen Teile einer URL zu zerlegen, und es ist auch einfach, die angegebenen Teile zu extrahieren, wie zum Beispiel:

echo parse_url($url, PHP_URL_PATH);
Nach dem Login kopieren


ist im zweiten Unter den Parametern legen Sie die folgenden Parameter fest: PHP_URL_SCHEME, PHP_URL_HOST, PHP_URL_PORT, PHP_URL_USER, PHP_URL_PASS, PHP_URL_PATH, PHP_URL_QUERY oder PHP_URL_FRAGMENT.


parse_str()

parse_str wird verwendet, um die Abfragezeichenfolge in der URL zu analysieren, d. h. den Zeichenfolgenwert, der über $_SERVER[ abgerufen werden kann 'QUERY_STRING']: Wenn die von uns angeforderte URL http://localhost/parse_str.php?id=1&category=php&title=php-install ist, lautet der von $_SERVER['QUERY_STRING'] zurückgegebene Wert id=1&category=php&title= php-install, und diese Form von String wird zufällig mit parse_str in ein assoziatives Array geparst.

wird wie folgt verwendet:

void parse_str(string $str [, array &$arr ])

Diese Funktion empfängt zwei Parameter, $str ist die Zeichenfolge, die benötigt wird analysiert werden soll, und der optionale Parameter $arr ist der Variablenname, in dem der nach dem Parsen generierte Array-Wert gespeichert wird. Wenn Sie den optionalen Parameter ignorieren, können Sie Variablen wie $id, $category und $title direkt aufrufen. Das folgende Skript simuliert eine GET-Anfrage.

<?php
<a href="http://localhost/parse_str.php?id=1&category=php&title=php-install">Click Here</a>
$query_str = $_SERVER[&#39;QUERY_STRING&#39;];
parse_str($query_str); /* 这种方式可以直接使用变量$id, $category, $title */
parse_str($query_str, $query_arr);
?>
<pre class="brush:php;toolbar:false"><?php print_r($query_arr); ?>

?> /* 运行结果 */ Array ( [id] => 1 [category] => php [title] => php-install ) 1 php php-install
Nach dem Login kopieren

http_build_query soll ein Array in eine URL konvertiert werden? Die folgende Parameterzeichenfolge wird automatisch urlencodiert

string http_build_query (array formdata [, string numeric_prefix])

Fügen Sie einen Index zum Array hinzu, wenn kein angegebener Schlüssel vorhanden ist oder der Schlüssel eine Zahl ist

[Empfohlener Kurs: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonPHP ruft die Parameter jedes Teils der URL ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage