php - example - ini_set() alcance del efecto?
php.ini xampp (1)
He tenido index.php
y varios archivos que incluyen en cascada, algo como esto.
index.php -> controller.php -> model.php -> view.php
En model.php
tengo una función que usa ini_set(''memory_limit'', ''-1'');
¿Cuándo ini_set()
cambio de la configuración de ini_set()
?
Después de ejecutado index.php
? O view.php
? ¿O la función en model.php
?
ini_set()
es global para todo lo que sucede en el script (no solo el archivo actual: todo el hilo de ejecución que se está produciendo), para esta única solicitud; No importa de dónde lo invoque, siempre afectará la configuración global de este script. El efecto expirará cuando su script termine, por ejemplo, a través de exit
, die
o ejecutándose desde el final de index.php
.
No afectará a ningún otro script que se ejecute simultáneamente (los que necesitan llamar a ini_set
sí mismos), y no persistirá en solicitudes posteriores (si necesita una configuración permanente, debe editar php.ini
).
Tenga en cuenta que la documentación dice lo mismo :
Establece el valor de la opción de configuración dada. La opción de configuración mantendrá este nuevo valor durante la ejecución del script, y se restaurará al final del script.
Edición: ya que aparentemente no está claro: el valor que cambia usando ini_set
será válido para todo el script en adelante. No importa dónde se encuentre actualmente la ejecución (en qué archivo, en qué clase, en qué función); El escenario será el mismo, en todas partes. Permanecerá así hasta que vuelva a cambiarlo o hasta que finalice la secuencia de comandos completa. (no el archivo actual, no la función actual; todo el script)