-a |
--interactive |
Startet PHP im interaktiven Modus. Weitere Informationen siehe die
Dokumentation für den Interaktiven Modus.
|
-b |
--bindpath |
Der Bind Path für den externen FASTCGI-Servermodus (nur
CGI).
|
-C |
--no-chdir |
Nicht in das Verzeichnis des Skripts wechseln (nur
CGI).
|
-q |
--no-header |
Der Quiet-Mode. Unterdrücke die Ausgabe von
HTTP-Headern (nur CGI).
|
-T |
--timing |
Messe die Ausführungszeit des Skriptes. Dies wird
count Mal durchgeführt (nur
CGI).
|
-c |
--php-ini |
Mit dieser Option kann man entweder ein Verzichnis angeben, in
welchem nach der php.ini gesucht werden soll, oder man kann eine
eigene INI -Datei angeben (diese muss nicht
php.ini heissen). Zum Beispiel:
Wenn Sie diese Option nicht angeben, wird die php.ini-Datei an den
vorgegebenen Orten gesucht.
|
-n |
--no-php-ini |
php.ini komplett ignorieren.
|
-d |
--define |
Diese Option erlaubt es Ihnen, einen eigenen Wert für eine beliebige
in php.ini erlaubte Direktive zu setzen. Die Syntax ist:
-d configuration_directive[=value]
# Auslassen des Wertes setzt die Direktive auf "1"
$ php -d max_execution_time
-r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(1) "1"
# Übergeben eines leeren Wertes setzt die Direktive auf ""
php -d max_execution_time=
-r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(0) ""
# Die Direktive wird auf das gesetzt, was nach '=' kommt
$ php -d max_execution_time=20
-r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(2) "20"
$ php -d max_execution_time=doesntmakesense
-r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(15) "doesntmakesense"
|
-e |
--profile-info |
Erweiterte Informationen für Debugger/Profiler erstellen.
|
-f |
--file |
Parst und führt die angegebene Datei aus. Das -f ist
optional und kann weggelassen werden. Es genügt, nur den Dateinamen
anzugeben.
Hinweis:
Um Argumente an das Skript zu übergeben, muss das erste Argument
-- sein, ansonsten interpretiert PHP diese als
PHP-Optionen.
|
-h und -? |
--help und --usage |
Gibt eine Liste von Kommandozeilenoptionen, sowie kurzen
Beschreibungen aus.
|
-i |
--info |
Diese Kommandozeilenoption ruft phpinfo() auf und
gibt das Ergebnis aus. Wenn PHP nicht korrekt funktioniert, ist es
empfehlenswert, php -i zu verwenden und
nachzusehen, ob etwa Fehlermeldungen vor oder statt der
Informationstabellen ausgegeben werden. Beachten Sie, dass die Ausgabe
bei Verwendung des CGI-Modus in
HTML erfolgt und deswegen ziemlich umfangreich ist.
|
-l |
--syntax-check |
Diese Option stellt eine angenehme Methode bereit, nur eine
Syntaxüberprüfung des angegebenen PHP-Codes durchzuführen. Bei Erfolg
wird der Text No syntax errors detected in
<filename> auf die Standardausgabe geschrieben und
der Rückgabewert ist 0 . Bei Misserfolg wird der
Text Errors parsing <filename> zusätzlich
zur internen Parser-Fehlermeldung auf der Standardausgabe ausgegeben
und der Rückgabewert auf -1 gesetzt.
Diese Option wird keine fatalen Fehler (wie undefinierte Funktionen)
finden. Verwenden Sie die Option -f, wenn sie auch
diese überprüfen wollen.
Hinweis:
Diese Option funktioniert nicht zusammen mit -r.
|
-m |
--modules |
Beispiel #1 Ausgabe der geladenen PHP- und Zend-Module
$ php -m
[PHP Modules]
xml
tokenizer
standard
session
posix
pcre
overload
mysql
mbstring
ctype
[Zend Modules]
|
-r |
--run |
Diese Option erlaubt die Ausführung von PHP Code direkt von der
Kommandozeile. Die-PHP Tags <?php und
?> werden nicht
benötigt und verursachen einen Parsefehler, wenn sie
dennoch vorhanden sind.
Hinweis:
Bei der Verwendung dieser Option in PHP ist besondere Vorsicht
geboten, dass es nicht zu Kollisionen mit Kommandozeilenvariablen
kommt.
Beispiel #2 Syntaxfehler beim Verwenden von doppelten Anführungszeichen
$ php -r "$foo = get_defined_constants();"
PHP Parse error: syntax error, unexpected '=' in Command line code on line 1
Parse error: syntax error, unexpected '=' in Command line code on line 1
Das Problem hier ist, dass auch sh/bash Variablen ersetzt, wenn
doppelte Anführungszeichen verwendet werden (" ).
Weil die Variable $foo wahrscheinlich nicht
definiert ist, wird die Variable zu nichts aufgelöst. Der
entstehende Code, welcher PHP übergeben wird, sieht so aus:
Der richtige Weg wäre, einfache Anführungszeichen zu verwenden
(' ). Variablen in einfachen Anführungszeichen
werden von sh/bash nicht ersetzt.
Beispiel #3 Verwendung einfacher Anführungszeichen, um ein Ersetzen der Variablen zu verhindern
$ php -r '$foo = get_defined_constants(); var_dump($foo);'
array(370) {
["E_ERROR"]=>
int(1)
["E_WARNING"]=>
int(2)
["E_PARSE"]=>
int(4)
["E_NOTICE"]=>
int(8)
["E_CORE_ERROR"]=>
[...]
Wenn Sie eine andere Kommandozeilenumgebung als sh/bash verwenden,
könnten Sie auf weitere Probleme stoßen. Sie können gerne einen
Bugreport unter » https://bugs.php.net/ erstellen. Man
kann dennoch leicht in Schwierigkeiten geraten, wenn man versucht
PHP- oder Shell-Variablen zu verwenden oder Backslashes zum
Maskieren verwendet. Sie wurden gewarnt!
Hinweis:
-r ist in der CLI SAPI verfügbar, nicht jedoch
in der CGI-SAPI.
Hinweis:
Diese Option ist für sehr einfachen Code gedacht, weshalb einige
Direktiven wie etwa auto_prepend_file und auto_append_file in diesem
Modus ignoriert werden.
|
-B |
--process-begin |
PHP-Code, der ausgeführt werden soll, bevor stdin ausgewertet wird.
Verfügbar seit PHP 5.
|
-R |
--process-code |
PHP-Code, der für jede Eingabezeile ausgeführt werden soll. Verfügbar
seit PHP 5.
Es gibt zwei spezielle Variablen in diesem Modus:
$argn und $argi.
$argn enthält die Zeile, die PHP gerade
verarbeitet und $argi enthält die Zeilennummer.
|
-F |
--process-file |
PHP-Datei, die für jede Eingabezeile ausgeführt werden soll.
Verfügbar seit PHP 5.
|
-E |
--process-end |
PHP-Code, der nach der Verarbeitung der Eingabe ausgeführt werden
soll. Verfügbar seit PHP 5.
Beispiel #4
Nutzung der -B, -R und
-E Optionen, um die Anzahl der Zeilen in einem
Projekt zu zählen.
$ find my_proj | php -B '$l=0;' -R '$l += count(@file($argn));' -E 'echo "Total Lines: $l\n";'
Total Lines: 37328
|
-S |
--server |
Startet den eingebauten
Webserver. Verfügbar seit PHP 5.4.0.
|
-t |
--docroot |
Gibt den Document-Root (Dokument-Wurzelverzeichnis) für den eingebauten Webserver
an. Verfügbar seit PHP 5.4.0.
|
-s |
--syntax-highlight und --syntax-highlighting |
Den Quelltext mit farbiger Syntaxhervorhebung anzeigen.
Diese Option verwendet den internen Mechanismus zum Parsen von
Dateien, um eine HTML-Version mit Syntax-Highlighting auf die
Standardausgabe zu schreiben. Beachten Sie, dass sie nur einen Block
von <code> [...] </code> HTML-Tags
erzeugt, jedoch keine HTML-Header.
Hinweis:
Diese Option funktioniert nicht zusammen mit -r.
|
-v |
--version |
Beispiel #5
Nutzung von -v, um den
SAPI-Namen, sowie die PHP- und Zend-Version zu
bestimmen
$ php -v
PHP 5.3.1 (cli) (built: Dec 11 2009 19:55:07)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
|
-w |
--strip |
Den Quelltext mit entfernten Kommentaren und Leerzeichen anzeigen.
Hinweis:
Diese Option funktioniert nicht zusammen mit -r.
|
-z |
--zend-extension |
Eine Zend-Erweiterung laden. Wenn nur ein Dateiname angegeben wird,
versucht PHP, die Erweiterung aus dem momentanen
Standard-Bibliotheken-Pfad auf Ihrem System zu laden (auf
Linux-Systemen normalerweise in /etc/ld.so.conf
angegeben). Wenn ein Dateiname mit absoluter Pfadinformation
übergeben wird, wird der Bibliotheken-Pfad des Systems nicht
verwendet. Ein relativer Dateiname mit Pfadinformationen wird PHP
veranlassen, zu versuchen, die Erweiterung in einem Pfad relativ zum
aktuellen Verzeichnis zu laden.
|
|
--ini |
Zeigt die Namen der Konfigurationsdateien und die durchsuchten
Verzeichnisse. Verfügbar seit PHP 5.2.3.
Beispiel #6 --ini example
$ php --ini
Configuration File (php.ini) Path: /usr/dev/php/5.2/lib
Loaded Configuration File: /usr/dev/php/5.2/lib/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
|
--rf |
--rfunction |
Zeigt Informationen über die gegebene Funktion oder Klassenmethode
(z.B. Anzahl und Namen der Parameter). Verfügbar seit PHP 5.1.2.
Diese Option ist nur verfügbar, wenn PHP mit
Reflection-Unterstützung
kompiliert wurde.
Beispiel #7 Einfache --rf -Nutzung
$ php --rf var_dump
Function [ <internal> public function var_dump ] {
- Parameters [2] {
Parameter #0 [ <required> $var ]
Parameter #1 [ <optional> $... ]
}
}
|
--rc |
--rclass |
Zeigt Inforationen über die gegebene Klasse (Liste der Konstanten,
Eigenschaften und Methoden). Verfügbar seit PHP 5.1.2.
Diese Option ist nur verfügbar, wenn PHP mit Reflection-Unterstützung kompiliert
wurde.
Beispiel #8 --rc -Beispiel
$ php --rc Directory
Class [ <internal:standard> class Directory ] {
- Constants [0] {
}
- Static properties [0] {
}
- Static methods [0] {
}
- Properties [0] {
}
- Methods [3] {
Method [ <internal> public method close ] {
}
Method [ <internal> public method rewind ] {
}
Method [ <internal> public method read ] {
}
}
}
|
--re |
--rextension |
Zeigt Informationen über die gegebene Erweiterung (Liste der
php.ini-Optionen, definierte Funktionen, Konstanten und Klassen.
Verfügbar seit PHP 5.1.2.
Diese Option ist nur verfügbar, wenn PHP mit Reflection-Unterstützung kompiliert
wurde.
Beispiel #9 --re -Beispiel
$ php --re json
Extension [ <persistent> extension #19 json version 1.2.1 ] {
- Functions {
Function [ <internal> function json_encode ] {
}
Function [ <internal> function json_decode ] {
}
}
}
|
--rz |
--rzendextension |
Zeigt Konfiguration der gegebenen Zend-Erweiterung an (entspricht der
von phpinfo() zurückgegebenen Information).
Verfügbar seit PHP 5.4.0.
|
--ri |
--rextinfo |
Zeigt die Konfiguration der gegebenen Erweiterung (entspricht der von
phpinfo() zurückgegebenen Information). Verfügbar
seit PHP 5.2.2. Die Konfiguration des Sprachkerns kann über den
speziellen Erweiterungsnamen "main" ermittelt werden.
Beispiel #10 --ri -Beispiel
$ php --ri date
date
date/time support => enabled
"Olson" Timezone Database Version => 2009.20
Timezone Database => internal
Default timezone => Europe/Oslo
Directive => Local Value => Master Value
date.timezone => Europe/Oslo => Europe/Oslo
date.default_latitude => 59.930972 => 59.930972
date.default_longitude => 10.776699 => 10.776699
date.sunset_zenith => 90.583333 => 90.583333
date.sunrise_zenith => 90.583333 => 90.583333
|