-a |
--interactive |
Ejecutar PHP de forma interactiva. Para más información, consúltese
la sección Consola interactiva.
|
-b |
--bindpath |
Ruta Ligada en modo de servidor FASTCGI externo
(sólo en CGI).
|
-C |
--no-chdir |
No cambiar el directorio del script (sólo en CGI).
|
-q |
--no-header |
Modo silencioso. Elimina la salida de cabeceras HTTP
(sólo en CGI).
|
-T |
--timing |
Calcula el tiempo de ejecución del script un número de veces
(sólo en CGI).
|
-c |
--php-ini |
Especifica ya sea un directorio en el que se busca a
php.ini o bien un fichero INI personalizado
(que no tiene porqué llamarse php.ini necesariamente), p.ej.:
Si no se especifica esta opción, se busca el fichero php.ini en las
localizaciones predeterminadas.
|
-n |
--no-php-ini |
Ignorar por completo el fichero php.ini.
|
-d |
--define |
Establecer un valor predeterminado para cualquiera de las directivas
de configuración permitidas en php.ini. Ésta es la sintaxis:
-d directiva_de_configuracion[=valor]
# Si se omite el valor, se establecerá un "1" a la directiva
$ php -d max_execution_time
-r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(1) "1"
# Si se pasa un valor vacío, se establecerá "" a la directiva
php -d max_execution_time=
-r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(0) ""
# Se pasará lo que haya tras el caracter '=' a la directiva de configuración
$ 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 |
Activa el modo de información expandida, para usar con un
depurador/perfilador.
|
-f |
--file |
Analiza y ejecuta el fichero proporcionado. El
modificador -f es opcional y puede ser omitido - es suficiente
con solo poner el nombre del fichero a ejecutar.
Nota:
Para pasar argumentos a un script, el primer argumento debe ser
-- , sino PHP los interpretará como opciones
de PHP.
|
-h y -? |
--help y --usage |
Muestra una lista de
opciones de línea de comandos, con descripciones de una línea sobre lo que hace.
|
-i |
--info |
Invoca a phpinfo(), y muestra el resultado.
Si PHP no funcionara correctamente, es aconsejable utilizar
php -i para ver donde se muestre cualquier mensaje
de error antes o en el lugar de las tablas de información.
Tenga en cuenta que al usarse en modo CGI
la salida es en HTML y por lo tanto muy larga.
|
-l |
--syntax-check |
Provee un método conveniente para realizar solamente una revisión de sintáxis
del código proporcionado de PHP. En caso de éxito, se muestra el texto
No syntax errors detected in <filename>
en la salida estándar y se devuelve un código de retorno
0 . Si fallara, se mostraría el texto Errors parsing
<filename> , además del mensaje de error de análisis
correspondiente en la salida estándar, y se retornaría el código
-1 .
Esta opción no encuentra errores fatales (como funciones no definidas). Utilice
el modificador -f si se desea también comprobar errores fatales.
Nota:
Esta opción no funciona junto con la opción
-r.
|
-m |
--modules |
Ejemplo #1 Muestra los módulos PHP y Zend incorporados (y habilitados)
$ php -m
[PHP Modules]
xml
tokenizer
standard
session
posix
pcre
overload
mysql
mbstring
ctype
[Zend Modules]
|
-r |
--run |
Permite ejecutar PHP desde la línea de comandos.
Las etiquetas de inicio y fin (<?php y
?> ) no son
necesarias y provocarán un error sintáctico si estuvieran presentes.
Nota:
Debe tenerse cuidado al usar PHP de esta forma para no
colisionar con sustituciones de variables de línea de comandos
hechas por la propia consola.
Ejemplo #2 Obteniendo un error sintáctico usando comillas dobles
$ 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
El problema aquí es que sh/bash lleva a cabo una sustitución de variables
incluso si estamos usando comillas dobles " . Puesto que la
variable $foo no está definida, no se
sustituye por nada, haciendo que el código real que se le pasa
a la ejecución de PHP sea:
La forma correcta sería usar comillas simples ' .
Las variables de texto en comillas simples no se sustituyen en
sh/bash.
Ejemplo #3 Usando comillas simples para prevenir la sustitución de
variables de la consola
$ 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"]=>
[...]
Si se está usando una consola diferente de sh/bash, es posible experimentar
otros errores. Le animamos a enviar un informe de error a
» https://github.com/php/php-src/issues.
Tenga en cuenta que es muy fácil verse en problemas al tratar de utilizar variables
(de la consola o de PHP) en código de línea de comandos, o al usar el caracter de barra invertida (\)
para escapar caracteres, así que tome mucho cuidado haciendo eso. Ha sido advertido!
Nota:
-r está disponible en SAPI CLI, pero no en
CGI SAPI.
Nota:
Esta opción está pensada unicamente para código muy básico, así que algunas
directivas de configuración (tales como auto_prepend_file y auto_append_file) se ignoran
en este modo.
|
-B |
--process-begin |
Código PHP a ejecutar antes de procesar la entrada. Añadido en PHP 5.
|
-R |
--process-code |
Código PHP a ejecutar por cada línea de entrada. Añadido en PHP 5.
Hay dos variables especiales disponibles en este modo:
$argn y $argi.
$argn contendrá la línea que PHP está procesando en
un momento dado, mientras que $argi contendrá el número de
línea.
|
-F |
--process-file |
Fichero PHP a ejecutar por cada línea de entrada. Añadido en PHP 5.
|
-E |
--process-end |
Código PHP a ejecutar tras procesar cada línea. Añadido en PHP 5.
Ejemplo #4 Usando las opciones -B, -R y
-E para contar el número de líneas de un
proyecto.
$ find my_proj | php -B '$l=0;' -R '$l += count(@file($argn));' -E 'echo "Total Lines: $l\n";'
Total Lines: 37328
|
-S |
--server |
Inicia el servidor web
interno. Disponible a partir de PHP 5.4.0.
|
-t |
--docroot |
Especifiva la raíz del documento para el servidor web interno.
Disponible a partir de PHP 5.4.0.
|
-s |
--syntax-highlight y --syntax-highlighting |
Mostrar el código fuente destacando la sintaxis en color.
Esta opción utiliza los mecanismos internos de análisis del ficheros y escribe
una versión HTML coloreada y la muestra en la salida estándar.
Tenga en cuenta que todo lo que hace es generar un bloque de etiquetas
HTML <code> [...] </code> ,
sin cabeceras HTML.
Nota:
Esta opción no puede funcionar junto con la opción
-r.
|
-v |
--version |
Ejemplo #5 Al usar -v obtenemos el nombre de la SAPI
y la versión de PHP y Zend
$ 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 |
Mostrar código fuente sin comentarios ni líneas en blanco.
Nota:
Esta opción no puede usarse junto con la opción -r.
|
-z |
--zend-extension |
Carga una extensión Zend. Si sólo se proporciona un nombre de fichero, PHP
trata de cargar la extensión en el directorio de bibliotecas por defecto de
su sistema (normalmente se especifica en /etc/ld.so.conf
en sistemas Linux, por ejemplo). Si se proporciona un nombre de fichero con la ruta absoluta
no se usarán las rutas de bibliotecas del sistema. Un nombre de fichero relativo
que incluya algún directorio le indicará a PHP que sólo trate de cargar
la extensión a partir del directorio actual.
|
|
--ini |
Mostrar el nombre del fichero de configuración y de los directorios analizados.
Disponible desde PHP 5.2.3.
Ejemplo #6 Ejemplo de --ini
$ 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 |
Mostrar información de la función o método proporcionado (p.ej.
número y nombre de los parámetros). Disponible desde PHP 5.1.2.
Esta opción sólo está disponible si se compiló PHP con soporte
para Reflection.
Ejemplo #7 Uso básico de --rf
$ php --rf var_dump
Function [ <internal> public function var_dump ] {
- Parameters [2] {
Parameter #0 [ <requerido> $var ]
Parameter #1 [ <opcional> $... ]
}
}
|
--rc |
--rclass |
Muestra información de la clase dada (lista de constantes, propiedades
y métodos). Disponible desde PHP 5.1.2.
Esta opción sólo está disponible si se compiló PHP con soporte para
Reflection.
Ejemplo #8 Ejemplo de --rc
$ 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 |
Muestra información de la extensión dada (lista de opciones en php.ini,
funciones definidas, constantes y clases). Disponible desde PHP 5.1.2.
Esta opción sólo está disponible si se compiló PHP con soporte para
Reflection .
Ejemplo #9 Ejemplo de --re
$ 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 |
Mostrar la información de configuración para la extensión Zend proporcionada (la
misma información que es devuelta por la función phpinfo()).
Disponible como parte de PHP 5.4.0.
|
--ri |
--rextinfo |
Mostrar información de configuración de la extensión dada (la misma
información que muestra phpinfo()).
Disponible desde PHP 5.2.2. La información relevante está disponible
usando "main" como nombre de extensión.
Ejemplo #10 Ejemplo de --ri
$ 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
|