Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich in PHP mehrere Parameter mit demselben Namen von einer URL abrufen?

Wie kann ich in PHP mehrere Parameter mit demselben Namen von einer URL abrufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-04 16:18:11284Durchsuche

How Can I Retrieve Multiple Parameters with the Same Name from a URL in PHP?

Mehrere Parameter mit demselben Namen von einer URL in PHP abrufen

Beim Umgang mit URLs, die mehrere Parameter mit demselben Namen enthalten, ist das Standardverhalten von PHP Die Verwendung von $_GET gibt nur den zuletzt zugewiesenen Wert zurück. Um auf alle Werte für einen bestimmten Schlüssel zuzugreifen, sollten Sie den folgenden Ansatz in Betracht ziehen:

  1. Abfragezeichenfolge analysieren: Verwenden Sie „Explode“, um die Abfragezeichenfolge in einzelne Parameter aufzuteilen.
$query = explode('&', $_SERVER['QUERY_STRING']);
  1. Array initialisieren: Erstellen Sie ein Array zum Speichern des Parameter.
$params = array();
  1. Parameternamen und -wert extrahieren: Durchlaufen Sie die Parameter und extrahieren Sie den Namen und den Wert mit Explodieren.
foreach ($query as $param) {
  // Handle null value with '='
  if (strpos($param, '=') === false) $param += '=';

  list($name, $value) = explode('=', $param, 2);
}
  1. Dekodieren und im Array speichern: Dekodieren Sie die extrahierten Parameter und fügen Sie sie dem Array hinzu, wodurch erstellt wird ein Array für Parameter mit mehreren Werten.
  $params[urldecode($name)][] = urldecode($value);
}

Mit diesem Ansatz können Sie wie folgt auf die mehreren Parameterwerte zugreifen:

print_r($params['rft_id']);
// Array ('info:oclcnum/1903126', 'http://www.biodiversitylibrary.org/bibliography/4323')

Das obige ist der detaillierte Inhalt vonWie kann ich in PHP mehrere Parameter mit demselben Namen von einer URL abrufen?. 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