Manchmal haben Sie nicht die Möglichkeit, die PHP-Datei zu bearbeiten, um $ _GET auf die übergebenen Parameter zu setzen, und manchmal können oder wollen Sie PHP-CGI nicht installieren.
Ich fand, dass dies die beste Lösung für diesen Fall ist:
php -r '$_GET["key"]="value"; require_once("script.php");'
Dadurch wird vermieden, dass Ihre PHP-Datei geändert wird, und Sie können den einfachen PHP-Befehl verwenden. Wenn Sie PHP-CGI installiert haben, verwenden Sie dies auf jeden Fall, aber dies ist das nächstbeste. Ich dachte, diese Option wäre erwähnenswert
das -r bedeutet, den PHP-Code in der folgenden Zeichenfolge auszuführen. Dort legen Sie den Wert $ _GET manuell fest und verweisen dann auf die Datei, die Sie ausführen möchten.
Es ist erwähnenswert, dass Sie dies im richtigen Ordner ausführen sollten, häufig, aber nicht immer in dem Ordner, in dem sich die PHP-Datei befindet. Requires-Anweisungen verwenden den Speicherort Ihres Befehls, um relative URLs aufzulösen, NICHT den Speicherort der Datei
php [script name] "a=1&b=2&c=3"
das nicht auffüllt$_SERVER['QUERY_STRING']
, aber Sie können das Gleiche leicht durch Verweisen beeinflussen$_SERVER['argv'][1]
.