Al instalar el software PHP en su máquina, php.ini crea en el directorio de instalación. En el caso de XAMPP, php.ini se encuentra en la carpeta c:\xamm\php. Es un archivo de configuración importante que controla el rendimiento y establece todos los parámetros relacionados con PHP.

La función phpinfo() muestra una lista de diferentes parámetros y sus valores actuales de PHP, Aache, MySQL y otras partes de la instalación del servidor web.

Ejecute el siguiente código para mostrar la configuración, una de las cuales muestra la ruta de acceso al archivo «php.ini»:

<?php
   echo phpinfo();
?>

Archivo de configuración cargado

Busque la configuración Archivo de configuración cargado que muestra la ubicación de php.ini archivo

C:\xampp\php\php.ini

Los diferentes aspectos del comportamiento de PHP están configurados por un gran número de parámetros (llamados directivas). El archivo «php.ini» viene con la mayoría de las líneas que comienzan con punto y coma (símbolo ;)), lo que indica que la línea está comentada. La línea no comentada es en realidad la directiva efectiva y su valor. En otras palabras, para activar y asignar un valor a una directiva en particular, elimine el punto y coma inicial.

directive = value

Los nombres de las directivas distinguen entre mayúsculas y minúsculas. Las directivas son variables que se utilizan para configurar PHP o extensiones de PHP. Tenga en cuenta que no hay validación de nombres, por lo que si no se encuentra una directiva esperada, se utilizará un valor predeterminado, que puede ser una cadena, un número, una constante PHP (por ejemplo, E_ALL o M_PI), una de las constantes INI (On, Off, True, False, Yes, No y None).

En realidad, la carpeta C:\XAMPP\PHP contiene dos archivos INI, uno para ser utilizado en el entorno de producción y otro en el entorno de desarrollo.

El php.ini-development.ini es muy similar a su variante de producción, excepto que es mucho más detallado cuando se trata de errores. En la etapa de desarrollo, copie esto como php.ini para poder rastrear los errores en el código. Una vez que el código esté listo para la implementación, use php.ini-production.ini archivo como archivo php.ini efectivo, que esencialmente suprime los mensajes de error en gran medida.

Las directivas de php.ini se dividen en diferentes categorías, como manejo de errores, manejo de datos, rutas y directorios, cargas de archivos, extensiones PHP y configuración de módulos.

Aquí hay una lista de algunas de las directivas importantes en el archivo «php.ini»:

short_open_tag = Desactivado

Las etiquetas abiertas cortas se ven así: <? ?>. Esta opción debe estar desactivada si desea utilizar funciones XML.

safe_mode = Desactivado

Si se establece en On, es probable que haya compilado PHP con el indicador –enable-safe-mode. El modo seguro es más relevante para el uso de CGI. Consulte la explicación en la sección «Opciones de CGI en tiempo de compilación». anteriormente en este capítulo.

safe_mode_exec_dir = [DIR]

Esta opción solo es relevante si el modo seguro está activado; también se puede establecer con el indicador –with-exec-dir durante el proceso de compilación de Unix. PHP en modo seguro solo ejecuta binarios externos fuera de este directorio. El valor predeterminado es /usr/local/bin. Esto no tiene nada que ver con servir una página web PHP/HTML normal.

safe_mode_allowed_env_vars = [PHP_]

Esta opción establece qué variables de entorno pueden cambiar los usuarios en modo seguro. El valor predeterminado es solo las variables prepuestas con «PHP_». Si esta directiva está vacía, la mayoría de las variables son modificables.

safe_mode_protected_env_vars = [LD_LIBRARY_PATH]

Esta opción establece qué variables de entorno los usuarios no pueden cambiar en modo seguro, incluso si safe_mode_allowed_env_vars se establece de forma permisiva

disable_functions = [función1, función2…]

Una adición bienvenida a la configuración de PHP4 y perpetuada en PHP5 es la capacidad de deshabilitar funciones seleccionadas por razones de seguridad. Anteriormente, esto requería editar a mano el código C a partir del cual se hizo PHP. El sistema de archivos, el sistema y las funciones de red probablemente deberían ser las primeras en desaparecer porque permitir la capacidad de escribir archivos y alterar el sistema a través de HTTP nunca es una idea tan segura.

max_execution_time = 30

La función set_time_limit() won.t funciona en modo seguro, por lo que esta es la forma principal de hacer que se agote el tiempo de espera de un script en modo seguro. En Windows, debe anular en función de la memoria máxima consumida en lugar del tiempo. También puede usar la configuración de tiempo de espera de Apache para agotar el tiempo de espera si usa Apache, pero eso también se aplicará a los archivos que no sean PHP en el sitio.

error_reporting = E_ALL & ~E_NOTICE

El valor predeterminado es E_ALL & ~E_NOTICE, todos los errores excepto los avisos. Los servidores de desarrollo deben establecerse al menos en el valor predeterminado; Solo los servidores de producción deben considerar un valor menor

error_prepend_string = [«»]

Con su sujetalibros, error_append_string, esta configuración le permite hacer que los mensajes de error tengan un color diferente al de otro texto, o lo que sea.

warn_plus_overloading = Desactivado

Esta configuración emite una advertencia si el operador + se usa con cadenas, como en un valor de formulario.

variables_order = EGPCS

Esta opción de configuración sustituye a gpc_order. Ambos están ahora en desuso junto con register_globals. Establece el orden de las diferentes variables: Environment, GET, POST, COOKIE y SERVER (también conocido como Built-in). Puede cambiar este orden.

Las variables se sobrescribirán sucesivamente en orden de izquierda a derecha, y la que esté más a la derecha ganará la mano cada vez. Esto significa que si dejaste la configuración predeterminada y usaste el mismo nombre para una variable de entorno, una variable POST y una variable COOKIE, la variable COOKIE sería propietaria de ese nombre al final del proceso. En la vida real, esto no sucede mucho.

register_globals = Desactivado

Esta configuración le permite decidir si desea registrar variables EGPCS como globales. Esto ahora está obsoleto, y a partir de PHP4.2, esta bandera está desactivada de forma predeterminada. En su lugar, utilice matrices superglobales. Todos los listados de códigos principales de este libro utilizan matrices superglobales.

magic_quotes_gpc = Activado

Esta configuración escapa las comillas en los datos GET/POST/COOKIE entrantes. Si usa muchos formularios que posiblemente se envíen a sí mismos o a otros formularios y muestren valores de formulario, es posible que deba establecer esta directiva en On o prepararse para usar addslashes() en datos de tipo cadena.

magic_quotes_runtime = Desactivado

Esta configuración escapa las comillas en la base de datos entrante y las cadenas de texto. Recuerde que SQL agrega barras diagonales a las comillas simples y los apóstrofes al almacenar cadenas y no las elimina al devolverlas. Si esta configuración está desactivada, deberá usar stripslashes() al generar cualquier tipo de datos de cadena de una base de datos SQL. Si magic_quotes_sybase está activado, debe estar desactivado.

magic_quotes_sybase = Desactivado

Esta configuración escapa las comillas simples en las cadenas de texto y de base de datos entrantes con comillas simples de estilo Sybase en lugar de barras diagonales inversas. Si magic_quotes_runtime está activado, debe estar desactivado.

archivo-ante-automático = [ruta/a/archivo]

Si se especifica una ruta aquí, PHP debe incluirla automáticamente al principio de cada archivo PHP. Se aplican restricciones de ruta de inclusión.

archivo-anexar automáticamente = [ruta/a/archivo]

Si se especifica una ruta aquí, PHP debe incluirla automáticamente () al final de cada archivo PHP, a menos que escape usando la función exit(). Se aplican restricciones de ruta de inclusión.

include_path = [DIR]

Si establece este valor, solo se le permitirá incluir o requerir archivos de estos directorios. Por lo general, el directorio de inclusión se encuentra en la raíz del documento; Esto es obligatorio si you.re ejecutando en modo seguro. Establézcalo en . para incluir archivos del mismo directorio en el que se encuentra el script. Varios directorios están separados por dos puntos: .:/usr/local/apache/htdocs:/usr/local/lib.

doc_root = [DIR]

Si está utilizando Apache, ya ha establecido una raíz de documento para este servidor o host virtual en httpd.conf. Establezca este valor aquí si you.re usando el modo seguro o si desea habilitar PHP solo en una parte de su sitio (por ejemplo, solo en un subdirectorio de su raíz web).

file_uploads = [encendido/apagado]

Active esta marca si va a cargar archivos utilizando un script PHP.

upload_tmp_dir = [DIR]

¡No comente esta línea a menos que comprenda las implicaciones de las cargas HTTP!

session.save-handler = archivos

Excepto en raras circunstancias, no querrá cambiar esta configuración. Así que no lo toques.

ignore_user_abort = [Activado/Desactivado]

Esta configuración controla lo que sucede si un visitante del sitio hace clic en el botón Detener del navegador. El valor predeterminado es Activado, lo que significa que el script continúa ejecutándose hasta su finalización o tiempo de espera. Si la configuración se cambia a Desactivado, el script se anulará. Esta configuración solo funciona en el modo de módulo, no en CGI.

mysql.default_host = nombre de host

El host de servidor predeterminado que se utilizará al conectarse al servidor de bases de datos si no se especifica ningún otro host.

mysql.default_user = nombre de usuario

El nombre de usuario predeterminado que se va a utilizar al conectarse al servidor de bases de datos si no se especifica ningún otro nombre.

mysql.default_password = contraseña

La contraseña predeterminada que se utilizará al conectarse al servidor de bases de datos si no se especifica ninguna otra contraseña.

PHP - Variables Globales
PHP - Función var_dump()