vars php7 directives directivas configurar command-line-interface php

command line interface - php7 - Cómo cambiar la ruta a php.ini en la versión CLI de PHP



php ini vars (4)

El php que se ejecuta en el servidor web y la versión CLI no está utilizando el mismo archivo php.ini. Si hago un comando php --ini , muestra esto

Configuration File (php.ini) Path: C:/Windows Loaded Configuration File: C:/wamp/bin/php/php5.3.8/php.ini Scan for additional .ini files in: (none) Additional .ini files parsed: (none)

mientras que mi versión web usa php.ini en C:/wamp/bin/apache/Apache2.2.21/bin/php.ini . Esto es probablemente muy común para las personas que usan wamp.

¿Cómo cambio el archivo de configuración cargado para leer desde C:/wamp/bin/apache/Apache2.2.21/bin/php.ini para que no tenga que mantener 2 versiones diferentes de php.ini?


Al especificar la variable de entorno PHPRC para que apunte al mismo php.ini que el que usa Apache me funcionó en Ubuntu

export PHPRC=/etc/php5/apache2/php.ini

O póngalo en $ HOME / .bashrc para importar cada vez que se inicie cli


He pasado aproximadamente 3 horas tratando de hacer exactamente lo que pregunta tu pregunta. No podia hacerlo Renuncié y copié ese php.ini a C: / Windows y cambié mi variable ENV "PHPRC" a C: / Windows (y en httpd.conf). De esa manera, tanto mi CLI php como Apach php e están usando el mismo archivo. No pude obtener "php -m" para mostrar los módulos que había cargado en mi php.ini durante toda mi vida hasta que hice este cambio ...


Por http://php.net/configuration.file :

php.ini se busca en estas ubicaciones (en orden):

  • Ubicación específica del módulo SAPI (directiva PHPIniDir en Apache 2, opción de línea de comando -c en CGI y CLI, parámetro php_ini en NSAPI, variable de entorno PHP_INI_PATH en THTTPD)
  • La variable de entorno PHPRC. Antes de PHP 5.2.0, esto se verificaba después de la clave de registro mencionada a continuación.
  • A partir de PHP 5.2.0, la ubicación del archivo php.ini se puede configurar para diferentes versiones de PHP. Las siguientes claves de registro se examinan en orden:
    • [HKEY_LOCAL_MACHINE / SOFTWARE / PHP / xyz], [HKEY_LOCAL_MACHINE / SOFTWARE / PHP / xy] y [HKEY_LOCAL_MACHINE / SOFTWARE / PHP / x], donde x, y, z son las versiones principales, principales y de versión de PHP. Si hay un valor para IniFilePath en cualquiera de estas claves, la primera que se encuentre se usará como la ubicación del php.ini (solo Windows).
    • [HKEY_LOCAL_MACHINE / SOFTWARE / PHP], valor de IniFilePath (solo Windows).
  • Directorio de trabajo actual (excepto CLI).
  • El directorio del servidor web (para módulos SAPI), o el directorio de PHP (de lo contrario en Windows).
  • Directorio de Windows (C: / windows o C: / winnt) (para Windows), o la opción de tiempo de compilación --with-config-file-path.

Para CLI, su mejor $PHPRC probablemente sea establecer la variable de entorno $PHPRC para la cuenta que ejecutará los scripts, o recompilar PHP con una --with-config-file-path diferente --with-config-file-path .

También puede anular el directorio de búsqueda php.ini por ejecución especificando la opción -c al invocar PHP:

> php --help Usage: php [options] [-f] [--] [args...] ... -c | Look for php.ini file in this directory


intenta ejecutar la función phpinfo() en ambos lados

Servidor web y CLI y descubra la ubicación exacta de su archivo php.ini para ambos lados

y mantener esos archivos solamente