El comportamiento de estas funciones es afectado por la configuración en el archivo php.ini.
| Nombre | Por defecto | Cambiable | Historial de cambios |
|---|---|---|---|
| yaf.library | "" | INI_ALL |
|
| yaf.environ | "product" | INI_SYSTEM |
|
| yaf.forward_limit | 5 | INI_ALL |
|
| yaf.use_namespace | 0 | INI_ALL |
|
| yaf.action_prefer | 0 | INI_ALL |
|
| yaf.lowcase_path | 0 | INI_ALL |
|
| yaf.use_spl_autoload | 0 | INI_ALL |
|
| yaf.name_suffix | 1 | INI_ALL |
|
| yaf.name_separator | "" | INI_ALL |
Aquí hay una aclaración sobre el uso de las directivas de configuración.
Nota:
La directiva
yaf.cache_configexistía en Yaf 2.x, donde almacenaba en caché el resultado analizado del fichero de configuración INI dentro del proceso PHP. Fue eliminada en Yaf 3.0.0 y ya no se reconoce.
yaf.library
string
El directorio de la biblioteca global. Yaf_Loader busca en este directorio las clases que no encuentra en la biblioteca local de la aplicación (ver application.library).
Ver también Yaf_Loader::getLibraryPath() y Yaf_Loader::setLibraryPath().
yaf.environ
string
El nombre del entorno, "product" por omisión. Lo
usa Yaf_Application para elegir la sección del
fichero de configuración INI (su primer argumento de constructor) que
se convierte en la configuración de la aplicación.
Por ejemplo, si este valor es "product", Yaf usará
la sección llamada [product] del fichero de
configuración INI como configuración final del
Yaf_Application. El nombre del entorno también
puede sustituirse por aplicación pasando el segundo argumento del
constructor a Yaf_Application::__construct().
yaf.forward_limit
int
El número máximo de veces que
Yaf_Controller_Abstract::forward() puede
encadenarse en una sola petición, 5 por omisión.
Es una protección frente a bucles recursivos de Yaf_Controller_Abstract::forward(); cuando se supera el límite, se lanza una Yaf_Exception_DispatchFailed. Los valores no positivos se ajustan al valor por omisión.
yaf.use_namespace
int
Cuando está activado, todas las clases declaradas por Yaf se nombran al estilo de los namespaces:
Yaf_Route_Rewrite => \Yaf\Route\Rewrite Yaf_Request_Http => \Yaf\Request\Http
Hay una excepción para las clases cuyo último componente es una palabra reservada de PHP y no puede usarse por tanto como nombre de clase; esas clases conservan el guion bajo en su último componente:
Yaf_Controller_Abstract => \Yaf\Controller_Abstract Yaf_Route_Static => \Yaf\Route_Static
Nota:
Solo se registra uno de los dos estilos de nombres cuando arranca la extensión, así que esta directiva debe establecerse antes de cargar la extensión; no puede alternarse por petición de ninguna forma útil.
yaf.action_prefer
int
Cuando solo hay una parte en el PATH_INFO, decide
si debe considerarse un nombre de controlador o un nombre de acción.
Si esta directiva está activada, el único segmento se considera un nombre de acción, y el nombre del controlador recurre al controlador por omisión; en caso contrario se considera un nombre de controlador.
yaf.lowcase_path
int
Si se deben pasar a minúsculas todos los componentes de la ruta durante la carga automática de clases.
yaf.use_spl_autoload
int
Cuando este valor está activado, si Yaf_Loader
no encuentra una clase, devuelve false, dando la oportunidad de que
se llame a otras funciones de carga automática.
Cuando está desactivado (lo que ocurre por omisión), si
Yaf_Loader no encuentra una clase, devuelve
true, y la carga automática de la clase falla inmediatamente: en
ese modo Yaf_Loader::autoload() devuelve
siempre true.
Nota:
Yaf registra su cargador durante la instanciación de un Yaf_Application, por lo que cualquier otro cargador automático registrado antes de la instanciación se llamará antes que Yaf_Loader::autoload().
yaf.name_suffix
int
Cuando está activado (lo que ocurre por omisión),
Yaf_Loader identifica una clase MVC por su
sufijo para decidir si es una clase de controlador o de acción:
IndexController,
IndexAction.
Cuando está desactivado, Yaf_Loader se fija en
el prefijo del nombre de la clase:
Controller_Index, Action_Index.
yaf.name_separator
string
Cuando no está vacío, Yaf_Loader identifica las clases MVC por este separador en lugar del guion bajo que separa el nombre y el sufijo MVC.
Por ejemplo, cuando este valor es "_" y
yaf.name_suffix está
activado, Yaf_Loader tomará
Index_Controller como clase de controlador,
mientras que IndexController se considera una
clase normal. Cuando está vacío (lo que ocurre por omisión), se usa
el guion bajo.