php - para - ¿Dónde están los archivos ini en MacOsX Sierra?
explorador de archivos mac (7)
Acabo de comprar el nuevo MacBook Pro. Echa un vistazo a lo que php -i | grep ini
php -i | grep ini
devuelve:
prompt> php -i | grep ini
Configuration File (php.ini) Path => /etc
Scan this dir for additional .ini files => (none)
Additional .ini files parsed => (none)
user_ini.cache_ttl => 300 => 300
user_ini.filename => .user.ini => .user.ini
Supported handlers => ndbm cdb cdb_make inifile flatfile
init_command_executed_count => 0
init_command_failed_count => 0
com_init_db => 0
Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException
open sourced by => Epinions.com
Y esto es lo que pasa cuando ejecuto php --ini
prompt> $ php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File: (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
Parece que php actual no está cargando ningún archivo php.ini. ¿Es posible?
Edición: se probó el siguiente método y confirmo que funciona en macOS, Linux y Windows ''CMD and Bash
Todo lo que necesita para escribir en el terminal / CMD / Bash es
php --ini
Se renderizará algo como:
Configuration File (php.ini) Path: /usr/local/etc/php/5.6
Loaded Configuration File: /usr/local/etc/php/5.6/php.ini
Scan for additional .ini files in: /usr/local/etc/php/5.6/conf.d
Additional .ini files parsed: (none)
Esto me funcionó en MacOS Sierra con PHP 7.1 instalado:
Crea un archivo php llamado phpinfo_temp.php (recuerda eliminar este archivo cuando hayas terminado):
<?php phpinfo(); ?>
Cargue el archivo y notará aproximadamente 7 variables: "Archivo de configuración cargado:". Este es el archivo php que está cargado.
Copia de seguridad del archivo php.ini antes de editarlo:
sudo cp /usr/local/php5/lib/php.ini /usr/local/php5/lib/php.ini.backup
Luego edita php.ini
sudo nano /usr/local/php5/lib/php.ini
Una vez que hayas terminado de editar, reinicia el servidor apache
sudo apachectl restart
Hay una función de PHP llamada php_ini_loaded_file () que devuelve la ruta de acceso de php.ini que está cargada.
Pruebe el siguiente código.
<?php
$inipath = php_ini_loaded_file();
if ($inipath) {
echo ''Loaded php.ini: '' . $inipath;
} else {
echo ''A php.ini file is not loaded'';
}
?>
Las versiones actuales de Mac OS X no se envían con un php.ini
. PHP utiliza valores predeterminados internos para todas las configuraciones.
Hay un archivo de configuración de muestra instalado en /etc/php.ini.default
. Si necesita personalizar la configuración de PHP, puede usar ese archivo como plantilla para crear un archivo de configuración en /etc/php.ini
. PHP leerá la configuración de ese archivo si está presente.
Puede usar el comando de búsqueda para buscar el sistema de archivos para php.ini o cualquier otra cosa. Puede tardar mucho tiempo en encontrarlo, dependiendo del tamaño del sistema de archivos. Si quieres que deje de buscar puedes hacer CTRL-C
.
find / -type f -name php.ini
Si no eres root, obtendrás algunos mensajes de permiso denegado, si quieres ejecutar como root puedes hacerlo.
sudo find / -type f -name php.ini
Aquí hay un tutorial para encontrar si está interesado en algunos otros ejemplos.
http://www.tecmint.com/35-practical-examples-of-linux-find-command/
la mayoría de las veces, el archivo .ini
no existe tal como está, pero se denomina .ini.default
en /etc
php -r "echo php_ini_loaded_file();"
En mi máquina vuelve:
/usr/local/etc/php/7.1/php.ini
;)