Descripción de las directivas de núcleo en php.ini

Esta lista incluye las directivas de núcleo en php.ini que puede definir para configurar su instalación de PHP. Las directivas gestionadas por extensiones son listadas en las páginas de documentación de las extensiones respectivamente. Por ejemplo, puede encontrarse información sobre las directivas de sesiones en la página de sesiones.

Opciones Httpd

Tabla H-3. Opciones Httpd

NombrePredeterminadoModificableCambios
async_send"0"PHP_INI_ALL 

Opciones del Lenguaje

Tabla H-4. Opciones del Lenguaje y Configuración Variada

NombrePredeterminadoModificableCambios
short_open_tag"1"PHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.0.0.
asp_tags"0"PHP_INI_PERDIRPHP_INI_ALL in PHP <= 4.0.0.
precision"14"PHP_INI_ALL 
y2k_compliance"1"PHP_INI_ALL 
allow_call_time_pass_reference"1"PHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.0.0.
expose_php"1"sólo php.ini 
zend.ze1_compatibility_mode"0"PHP_INI_ALLDisponible a partir de PHP 5.0.0.

A continuación se presenta una corta explicación de las directivas de configuración.

short_open_tag boolean

Indica si se permite el uso de la forma corta (<? ?>) de la etiqueta de apertura de PHP. Si desea usar PHP en conjunto con XML, puede deshabilitar esta opción, de modo que pueda usar <?xml ?> en forma directa. De otro modo, puede imprimir esta cadena con PHP, por ejemplo: <?php echo '<?xml version="1.0"'; ?>. Asimismo, si el parámetro está deshabilitado, debe usar la forma larga de la etiqueta de apertura de PHP (<?php ?>).

Nota: Esta directiva afecta también la contracción <?=, la cual es idéntica a <? echo. El uso de este atajo requiere que short_open_tag se encuentre habilitado.

asp_tags boolean

Habilita el uso de etiquetas <% %> tipo-ASP además de las etiquetas convencionales <?php ?>. Esto incluye el atajo para imprimir valores de variable <%= $valor %>. Para más información, vea Escapar desde HTML.

Nota: El soporte para etiquetas tipo-ASP fue agregado en 3.0.4.

precision integer

El número de dígitos significativos desplegados en números de punto flotante.

y2k_compliance boolean

Obligar compatibilidad con el año 2000 (causa problemas con navegadores no-compatibles)

allow_call_time_pass_reference boolean

Indica si se permite la habilidad de obligar que los argumentos sean pasados por referencia al momento de efectuar llamados de función. Este método es considerado obsoleto y es posible que no sea soportado en versiones futuras de PHP/Zend. El método recomendado de especificar cuáles argumentos deben ser pasados por referencia se encuentra en la declaración de funciones. Es recomendable que proceda a deshabilitar esta opción y asegurarse de que sus scripts trabajen correctamente sin ella, de modo que pueda estar seguro de que trabajarán con versiones futuras del lenguaje (recibirá una advertencia cada vez que use esta característica, y el argumento será pasado por valor, y no por referencia).

Pasar argumentos por referencia al momento de llamar una función fue declarado obsoleto por razones de limpieza del código. La función puede modificar su argumento de una forma no documentada si no se declara que el argumento es pasado por referencia. Para prevenir efectos colaterales, es mejor especificar cuáles argumentos son pasados por referencia únicamente en la declaración de la función.

Vea también las Referencias Explicadas.

expose_php boolean

Decide si PHP debe exponer el hecho de que está instalado en el servidor (p.ej. agregando su firma en la cabecera del servidor Web). No constituye un riesgo de seguridad en ninguna forma, pero hace posible determinar si usted usa PHP es su servidor o no.

zend.ze1_compatibility_mode boolean

Habilita el modo de compatibilidad con el Motor Zend 1 (PHP 4). Afecta el modo de clonar, moldear y comparar objetos.

Vea también la sección titulada Migración de PHP 4 a PHP 5.

Límites de Recursos

Tabla H-5. Límites de Recursos

NombrePredeterminadoModificableCambios
memory_limit"8M"PHP_INI_ALL 

A continuación se presenta una corta explicación de las directivas de configuración.

memory_limit integer

Este valor define la cantidad máxima de memoria en bytes que un script puede reservar. Esto ayuda a prevenir que scripts pobremente escritos terminen consumiendo toda la memoria disponible en un servidor. Para usar esta directiva, es necesario habilitarla en tiempo de compilación. De modo que la línea de llamado a configure debe incluir: --enable-memory-limit. Note que es necesario definir su valor a -1 si no desea imponer un límite a su memoria.

A partir de PHP 4.3.2, y siempre que memory_limit se encuentre habilitado, la función de PHP memory_get_usage() estará disponible.

Cuando se usa un número entero, el valor del mismo es medido en bytes. También se puede usar la notación reducida tal como se describe en esta FAQ.

Vea también: max_execution_time.

Manejo de Datos

Tabla H-6. Opciones de Configuración de Manejo de Datos

NombrePredeterminadoModificableCambios
track_vars"On"PHP_INI_?? 
arg_separator.output"&"PHP_INI_ALLDisponible desde PHP 4.0.5.
arg_separator.input"&"PHP_INI_PERDIRDisponible desde PHP 4.0.5.
variables_order"EGPCS"PHP_INI_ALL 
auto_globals_jit"1"PHP_INI_PERDIRDisponible desde PHP 5.0.0.
register_globals"0"PHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.2.3.
register_argc_argv"1"PHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.2.3.
register_long_arrays"1"PHP_INI_PERDIRDisponible desde PHP 5.0.0.
post_max_size"8M"PHP_INI_PERDIRPHP_INI_SYSTEM en PHP <= 4.2.3. Disponible desde PHP 4.0.3.
gpc_order"GPC"PHP_INI_ALL 
auto_prepend_fileNULLPHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.2.3.
auto_append_fileNULLPHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.2.3.
default_mimetype"text/html"PHP_INI_ALL 
default_charset""PHP_INI_ALL 
always_populate_raw_post_data"0"PHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.2.3. Disponible desde PHP 4.1.0.
allow_webdav_methods"0"PHP_INI_PERDIR 

A continuación se presenta una corta explicación de las directivas de configuración.

track_vars boolean

Si esta opción es habilitada, entonces las variables de Entorno, GET, POST, Cookies y Servidor pueden encontrarse en las matrices asociativas globales $_ENV, $_GET, $_POST, $_COOKIE, y $_SERVER.

Note que a partir de PHP 4.0.3, track_vars se encuentra habilitada siempre.

arg_separator.output string

El separador usado en URLs generadas por PHP para separar los argumentos.

arg_separator.input string

Lista de separadores usados por PHP para interpretar URLs de entrada en variables.

Nota: ¡Cada caracter en esta directiva es considerado como separador!

variables_order string

Establece el orden de procesamiento de variables EGPCS (Entorno, GET, POST, Cookie, Servidor). La configuración predeterminada de esta directiva es "EGPCS". Al definir este valor como "GP", por ejemplo, causará que PHP ignore completamente las variables de entorno, cookies y servidor, asi como que cualquier variable del método GET sea sobrescrita con una variable del método POST con el mismo nombre.

Vea también register_globals.

auto_globals_jit boolean

Cuando es habilitado el parámetro, las variables SERVER y ENV son creadas al usarse por primera vez ("Just In Time", o justo a tiempo) en lugar de hacerlo cuando el script inicia. Si estas variables no son usadas al interior del script, esta directiva resultará en una ganancia en rendimiento.

Las directivas de PHP register_globals, register_long_arrays, y register_argc_argv deben ser deshabilitadas para que esta directiva tenga efecto.

register_globals boolean

Indica si las variables EGPCS (Entorno, GET, POST, Cookie, Servidor) deben registrarse como variables globales o no.

A partir de PHP 4.2.0, esta directiva tiene el valor predeterminado off.

Por favor lea el capítulo de seguridad sobre el Uso de register_globals para más información al respecto.

Por favor note que register_globals no puede ser definido en tiempo de ejecución (ini_set()). Sin embargo, puede usar .htaccess si su servidor huésped lo permite como se describe anteriormente. Un ejemplo de entrada en .htaccess: php_flag register_globals off.

Nota: El valor register_globals es afectado por la directiva variables_order.

register_argc_argv boolean

Le dice a PHP si declarar las variables argv y argc (que contendrían la información de GET).

Vea también la documentación sobre la línea de comandos. Asimismo, esta directiva se encuentra disponible desde PHP 4.0.0, y su valor siempre fue "on" anteriormente.

register_long_arrays boolean

Le dice a PHP si debe registrar o no las variables predeterminadas largas tipo $HTTP_*_VARS. Cuando su valor es On (predeterminado), las variables de PHP largas predefinidas como $HTTP_GET_VARS serán definidas. Si no las usa, se recomienda deshablitar esta opción, por razones de rendimiento. En su lugar, use las matrices superglobales, como $_GET.

Esta directiva se encuentra disponible a partir de PHP 5.0.0.

post_max_size integer

Define el tamaño máximo permitido de datos enviados mediante el método post. Este parámetro afecta también la carga de archivos. Para cargar archivos grandes, este valor debe ser mayor que upload_max_filesize.

Si el límite de memoria es habilitado mediante su script configure, memory_limit afecta también la carga de archivos. En general, memory_limit debería ser mayor que post_max_size.

Cuando se usa un número entero, el valor del mismo es medido en bytes. También se puede usar la notación reducida tal como se describe en esta FAQ.

Si el tamaño de los datos post es mayor que post_max_size, las variables superglobales $_POST y $_FILES estarán vacías. Esto puede detectarse de varias maneras, p.ej. pasando la variable $_GET al script que procesa los datos, es decir <form action="editar.php?procesado=1">, y luego verificando que $_GET['procesado'] esté definido.

gpc_order string

Define el orden de procesamiento de variables GET/POST/COOKIE. El valor predeterminado de esta directiva es "GPC". Al definir este valor como "GP", por ejemplo, se causará que PHP ignore por completo las cookies y sobrescriba cualquier variables proveniente del método GET con variables del método POST que tengan el mismo nombre.

Nota: Esta opción no se encuentra disponible en PHP 4. Use variables_order en su lugar.

auto_prepend_file string

Especifica el nombre de un archivo que es interpretado automáticamente antes del archivo principal. El archivo es incluido como si fuera llamado con la función include(), de modo que se usa el valor de include_path.

El valor especial none deshabilita el preprocesamiento automático.

auto_append_file string

Especifica el nombre de un archivo que es interpretado automáticamente después del archivo principal. El archivo es incluido como si fuera llamado con la función include(), así que el valor de include_path es usado.

El valor especial none deshabilita el procesamiento posterior automático.

Nota: Si el script es terminado con exit(), el procesamionto posterior no occurirá.

default_mimetype string

default_charset string

A partir de 4.0b4, PHP siempre imprime de manera predeterminada una codificación de caracteres en la cabecera Content-type:. Para deshabilitar el envío del juego de caracteres, simplemente defina este valor como vacío.

always_populate_raw_post_data boolean

Poblar siempre $HTTP_RAW_POST_DATA, que centiene los datos POST puros. De otra forma, la variable es poblada solamente con los tipos de datos MIME no reconocidos. Sin embargo, el método preferido para acceder a los datos POST puros es php://input. $HTTP_RAW_POST_DATA no se encuentra disponible con enctype="multipart/form-data".

allow_webdav_methods boolean

Permitir el manejo de peticiones WebDAV http al interior de scripts PHP (p.ej. PROPFIND, PROPPATCH, MOVE, COPY, etc.). Esta directiva no existe a la altura de PHP 4.3.2. Si desea obtener los datos enviados desde tales peticiones, tiene que definir always_populate_raw_post_data también.

Vea también: magic_quotes_gpc, magic_quotes_runtime, y magic_quotes_sybase.

Rutas y Directorios

Tabla H-7. Opciones de Configuración de Rutas y Directorios

NombrePredeterminadoModificableCambios
include_path".;/ruta/hacia/php/pear"PHP_INI_ALL 
doc_rootNULLPHP_INI_SYSTEM 
user_dirNULLPHP_INI_SYSTEM 
extension_dir"/ruta/hacia/php"PHP_INI_SYSTEM 
cgi.fix_pathinfo"1"PHP_INI_ALL 
cgi.force_redirect"1"PHP_INI_ALL 
cgi.redirect_status_envNULLPHP_INI_ALL 
fastcgi.impersonate"0"PHP_INI_ALL 
cgi.rfc2616_headers"0"PHP_INI_ALL 

A continuación se presenta una corta explicación de las directivas de configuración.

include_path string

Especifica una lista de directorios en donde las funciones require(), include() y fopen_with_path() buscan archivos. El formato es como aquel de la variable de entorno de sistema PATH: una lista de directorios separada con dos-puntos en Unix o punto-y-coma en Windows.

Ejemplo H-1. include_path en Unix

include_path=".:/php/includes"

Ejemplo H-2. include_path en Windows

include_path=".;c:\php\includes"

Mediante el uso de . en la ruta de inclusión es posible definir inclusiones relativas, ya que su valor se traduce como el directorio actual.

doc_root string

El "directorio raíz" de PHP en el servidor. Usado solamente si su valor no es vacío. Si PHP es configurado con safe mode, no se servirán archivos por fuera de este directorio. Si PHP no fue compilado con FORCE_REDIRECT, usted debería definir doc_root en caso de estar usando PHP como CGI bajo cualquier servidor web (diferente a IIS). La alternativa es usar el parámetro de configuración cgi.force_redirect descrito más adelante.

user_dir string

El nombre base del directorio usado en un directorio de usuario para archivos PHP, por ejemplo public_html.

extension_dir string

El directorio en donde PHP ha de buscar por extensiones cargadas dinámicamente. Vea también: enable_dl, y dl().

extension string

Cuáles extensiones de carga dinámica leer cuando PHP inicia.

cgi.fix_pathinfo boolean

Ofrece un soporte real de PATH_INFO/PATH_TRANSLATED para CGI. El comportamiento anterior de PHP era definir PATH_TRANSLATED como SCRIPT_FILENAME, y no producir el valor PATH_INFO. Para más información sobre PATH_INFO, consulte las especificaciones sobre el estándar cgi. Definir este parámetro como 1 causará que el modo CGI de PHP fije su ruta para que cumpla con la especificación. Un valor de cero causa que PHP se comporte como lo hacía anteriormente. El valor predeterminado es cero. Es recomendable que arregle sus scripts para que usen SCRIPT_FILENAME en lugar de PATH_TRANSLATED.

cgi.force_redirect boolean

cgi.force_redirect es necesario para ofrecer seguridad cuando PHP es ejecutado como CGI bajo la mayoría de servidores web. Si no es definido, PHP habilita este parámetro por defecto. Es posible deshabilitarlo bajo su propio riesgo.

Nota: Usuarios de Windows: Es posible deshabilitar esta opción para IIS, de hecho, es necesario hacerlo. Para lograr que OmniHTTPD o Xitami funcionen es necesario deshabilitar este parámetro.

cgi.redirect_status_env string

Si cgi.force_redirect se encuentra habilitado, y no está usando servidores web Apache o Netscape (iPlanet), puede que necesite definir un nombre de variable de entorno que PHP use para saber si está bien continuar con la ejecución.

Nota: Definir esta variable puede causar problemas de seguridad, asegúrese de saber lo que hace primero.

fastcgi.impersonate string

FastCGI bajo IIS (en un SO basado en WINNT) soporta la habilidad de imitar tokens de seguridad del cliente que hace las peticiones. Esto permite que IIS defina el contexto de seguridad bajo el cual es ejecutada la petición. mod_fastcgi bajo apache no soporta esta característica por el momento (03/17/2002). Defina su valor como 1 si está usando IIS. Su valor predeterminado es cero.

cgi.rfc2616_headers int

Le dice a PHP qué tipo de cabeceras usar cuando envíe los códigos de respuesta HTTP. Si su valor es 0, PHP envía una cabecera Status: que es soportada por Apache y otros servidores web. Cuando esta opción tiene el valor de 1, PHP enviará cabeceras compatibles con el documento RFC 2616. Deje su valor en 0 a menos que sepa lo que está haciendo.

Carga de Archivos

Tabla H-8. Opciones de Configuración de Carga de Archivos

NombrePredeterminadoModificableCambios
file_uploads"1"PHP_INI_SYSTEMPHP_INI_ALL en PHP <= 4.2.3. Disponible desde PHP 4.0.3.
upload_tmp_dirNULLPHP_INI_SYSTEM 
upload_max_filesize"2M"PHP_INI_PERDIRPHP_INI_ALL en PHP <= 4.2.3.

A continuación se presenta una corta explicación de las directivas de configuración.

file_uploads boolean

Indica si se permite o no la carga de archivos HTTP. Vea también las directivas upload_max_filesize, upload_tmp_dir, y post_max_size.

Cuando se usa un número entero, el valor del mismo es medido en bytes. También se puede usar la notación reducida tal como se describe en esta FAQ.

upload_tmp_dir string

El directorio temporal usado para almacenar archivos cuando se realiza carga de archivos. Debe tener permisos de escritura para el usuario bajo el que PHP es ejecutado. Si no se especifica, PHP usará el valor predeterminado del sistema.

upload_max_filesize integer

El tamaño máximo de un archivo cargado.

Cuando se usa un número entero, el valor del mismo es medido en bytes. También se puede usar la notación reducida tal como se describe en esta FAQ.

SQL General

Tabla H-9. Opciones Generales de Configuración SQL

NombrePredeterminadoModificable 
sql.safe_mode"0"PHP_INI_SYSTEM 

A continuación se presenta una corta explicación de las directivas de configuración.

sql.safe_mode boolean

Directivas de Configuración del Depurador

Atención

Solo PHP 3 implementa un depurador predeterminado, para más información consulte Apéndice E.

debugger.host string

Nombre DNS o dirección IP del host usado por el depurador.

debugger.port string

Número de puerto usado por el depurador.

debugger.enabled boolean

Indica si el depurador se encuentra habilitado.

Hosting by: hurra.com
Generated: 2007-01-26 18:00:56