Wie bekomme ich nur die email Parameter aus diesen URLs/Werten?
Bitte beachten Sie, dass ich diese Zeichenfolgen nicht aus der Adressleiste des Browsers erhalte.
Ich bin etwas verwirrt, bitte erläutern Sie die Frage …
– Dexter Huinda
14. Juli 2012 um 3:30 Uhr
Wollen Sie sagen/bitten, dass die URLs als Zeichenfolgen behandelt werden?
– hjpotter92
14. Juli 2012 um 3:39 Uhr
Wenn Sie den E-Mail-Teil von Zeichenfolgen “abgleichen” möchten, wie in Ihren Beispielen, verwenden Sie reguläre Ausdrücke. Könnte so einfach sein /(email=\w\@\w\.\w)/ oder fortgeschrittenere Matching-Techniken. Ich gebe Ihnen nur die Idee. Sehen preg_match Funktion: php.net/manual/en/function.preg-match.php
– Dexter Huinda
14. Juli 2012 um 3:43 Uhr
mögliches Duplikat von Wie extrahiere ich Abfrageparameter aus einer URL-Zeichenfolge in PHP?
– Immer_ein_Lerner
8. Juli 2015 um 5:11 Uhr
Mögliches Duplikat der URL-Abfragezeichenfolge abrufen
Wenn Sie die bekommen möchten $url dynamisch mit PHP, werfen Sie einen Blick auf diese Frage:
Holen Sie sich die vollständige URL in PHP
Es funktioniert, aber ich erhalte Fehler in Protokollen wie diesem: PHP-Hinweis: Undefinierter Index: Abfrage
– Srinivas08
11. September 2018 um 13:52 Uhr
Außerdem wird ein Fragezeichen angezeigt, wenn es sich um das letzte Zeichen in der Abfrage handelt. Ich habe das verwendet: if (strpos($urlParts['path'], '?')) { $urlParts['path'] = substr($urlParts['path'], 0, strpos($urlParts['path'], '?')); } um es am Ende zu entfernen.
– Höchster Schöpfer
29. April 2021 um 14:09 Uhr
hjpotter92
Alle Parameter danach ? kann über abgerufen werden $_GET Reihe. Damit,
echo $_GET['email'];
extrahiert die E-Mails aus URLs.
Dies ist nicht die Antwort auf die Frage, aber dies ist die Antwort, nach der ich gesucht habe, als ich die Googles nach der Frage gefragt habe, also +1 für die richtige Antwort von Google.
– BillyNair
17. Februar 2016 um 18:44 Uhr
Dies ist möglicherweise nicht die Antwort auf die Frage, aber der richtige und einfachste Weg, um URL-Parameter abzurufen – wenn sie richtig eingestellt sind: https://[email protected]$email = $_GET['email']; $email === '[email protected]';
– CheddarMonkey
23. Juli 2019 um 22:56 Uhr
Verwenden Sie die parse_url() und parse_str() Methoden. parse_url() zerlegt einen URL-String in ein assoziatives Array seiner Teile. Da Sie nur einen einzelnen Teil der URL möchten, können Sie eine Verknüpfung verwenden, um einen Zeichenfolgenwert nur mit dem gewünschten Teil zurückzugeben. Nächste, parse_str() erstellt Variablen für jeden der Parameter in der Abfragezeichenfolge. Ich mag es nicht, den aktuellen Kontext zu verschmutzen, also fügt ein zweiter Parameter alle Variablen in ein assoziatives Array ein.
Wie in einer anderen Antwort erwähnt, ist die beste Lösung die Verwendung parse_url().
Sie müssen eine Kombination aus verwenden parse_url() und parse_str().
Die parse_url() analysiert die URL und gibt ihre Komponenten zurück, mit denen Sie die Abfragezeichenfolge abrufen können query Schlüssel. Dann sollten Sie verwenden parse_str() die die Abfragezeichenfolge analysiert und Werte in eine Variable zurückgibt.
Verwenden $_GET['email'] für Parameter in URL. Verwenden $_POST['email'] für gepostete Daten zum Skript. Oder verwenden _$REQUEST für beide. Auch, wie erwähnt, können Sie verwenden parse_url() Funktion, die alle Teile der URL zurückgibt. Verwenden Sie einen Teil namens “Abfrage” – dort finden Sie Ihren E-Mail-Parameter. Mehr Info: http://php.net/manual/en/function.parse-url.php
OP sagte, er bekomme keine URLs von address bar. Diese URLs sind nur Zeichenfolgen IN der Code.
– DavChana
14. Juli 2012 um 6:12 Uhr
Peter Mortensen
Sie können den folgenden Code verwenden, um die E-Mail-Adresse danach zu erhalten ? in der URL:
<?php
if (isset($_GET['email'])) {
echo $_GET['email'];
}
OP sagte, er bekomme keine URLs von address bar. Diese URLs sind nur Zeichenfolgen IN der Code.
– DavChana
14. Juli 2012 um 6:12 Uhr
Peter Mortensen
Ich habe eine Funktion aus Ruels Antwort erstellt.
Ich bin etwas verwirrt, bitte erläutern Sie die Frage …
– Dexter Huinda
14. Juli 2012 um 3:30 Uhr
Wollen Sie sagen/bitten, dass die URLs als Zeichenfolgen behandelt werden?
– hjpotter92
14. Juli 2012 um 3:39 Uhr
Wenn Sie den E-Mail-Teil von Zeichenfolgen “abgleichen” möchten, wie in Ihren Beispielen, verwenden Sie reguläre Ausdrücke. Könnte so einfach sein
/(email=\w\@\w\.\w)/
oder fortgeschrittenere Matching-Techniken. Ich gebe Ihnen nur die Idee. Sehenpreg_match
Funktion: php.net/manual/en/function.preg-match.php– Dexter Huinda
14. Juli 2012 um 3:43 Uhr
mögliches Duplikat von Wie extrahiere ich Abfrageparameter aus einer URL-Zeichenfolge in PHP?
– Immer_ein_Lerner
8. Juli 2015 um 5:11 Uhr
Mögliches Duplikat der URL-Abfragezeichenfolge abrufen
– jww
21. Oktober 2018 um 6:08 Uhr