Yaf_Loader::registerLocalNamespace
PHP Manual
PHP Manual»Yaf_Loader»Yaf_Loader::registerLocalNamespace

Yaf_Loader::registerLocalNamespace

(Yaf >=1.0.0)

Yaf_Loader::registerLocalNamespace — Registrar un namespace local

Descripción

public function Yaf_Loader::registerLocalNamespace(string|array $namespace, string $path = null): Yaf_Loader|false

Registra un namespace local. Las clases cuyo prefijo pertenezca a un namespace local se buscan bajo la ruta indicada (o el directorio de biblioteca local si no se especifica ruta) en lugar del directorio global.

Esto permite colocar las propias clases en el directorio de biblioteca local, mientras que las clases compartidas residen en el directorio de biblioteca global (véase el parámetro yaf.library en php.ini).

Parámetros

namespace

Una cadena de prefijo de namespace, o un array de pares prefijo/ruta (cuando el valor es una cadena de ruta) o cadenas de prefijos.

Un prefijo solo coincide en un límite de guión bajo o barra invertida: registrar Models hace que Models_User y Models sean locales, pero no ModelsUser. Se ignora la barra invertida inicial, y un nombre de clase escrito con barras invertidas se busca como si fueran guiones bajos.

path

El directorio en el que buscar el namespace. Si no se indica, se utiliza el directorio de biblioteca local.

Valores devueltos

Devuelve la instancia del cargador en caso de éxito, o false si se proporciona un parámetro no válido.

Ejemplos

Ejemplo #1 Ejemplo de Yaf_Loader::registerLocalNamespace()

<?php
class Bootstrap extends Yaf_Bootstrap_Abstract
{
    public function _initLoader()
    {
        $loader = Yaf_Loader::getInstance();

        /* Models_User se busca ahora en
         * APPLICATION_PATH/library/Models/User.php */
        $loader->registerLocalNamespace("Models");

        /* se registran varios prefijos a la vez, cada uno con su
         * propio directorio de búsqueda */
        $loader->registerLocalNamespace(array(
            "Services" => APPLICATION_PATH . "/services",
            "Vendor"   => APPLICATION_PATH . "/vendor",
        ));
    }
}
?>

Véase también

To Top