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

PHP ruft die Parameter jedes Teils der URL ab

little bottle
little bottlenach vorne
2019-04-16 11:12:3510461Durchsuche

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)

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);
?>

Das Ergebnis der Programmausführung ist wie folgt:

Array
(
    [scheme] => http
    [host] => 52php.cnblogs.com 
    [path] => /welcome/
)
<?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);
?>


Programmausgabe:

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


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);


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

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen