Secciones

Class Phalcon\Loader

Código fuente en GitHub

Namespace Phalcon   Uses Phalcon\Loader\Exception, Phalcon\Events\ManagerInterface, Phalcon\Events\EventsAwareInterface   Implements EventsAwareInterface

Este componente ayuda a cargar automáticamente las clases de tu proyecto basándose en algunas convenciones

use Phalcon\Loader;

// Creates the autoloader
$loader = new Loader();

// Register some namespaces
$loader->registerNamespaces(
    [
        "Example\\Base"    => "vendor/example/base/",
        "Example\\Adapter" => "vendor/example/adapter/",
        "Example"          => "vendor/example/",
    ]
);

// Register autoloader
$loader->register();

// Requiring this class will automatically include file vendor/example/adapter/Some.php
$adapter = new \Example\Adapter\Some();

Propiedades

//
protected checkedPath;

/**
 * @var array
 */
protected classes;

/**
 * @var array
 */
protected directories;

//
protected eventsManager;

/**
 * @var array
 */
protected extensions;

//
protected fileCheckingCallback = is_file;

/**
 * @var array
 */
protected files;

/**
 * @var bool
 */
protected foundPath;

/**
 * @var array
 */
protected namespaces;

/**
 * @var bool
 */
protected registered = false;

Métodos

public function autoLoad( string $className ): bool;

Carga automáticamente las clases registradas

public function getCheckedPath(): string;

Obtiene la ruta que está revisando el cargador para un ruta específica

public function getClasses(): array;

Devuelve el mapa de clases que actualmente tiene registrado el auto cargador

public function getDirs(): array;

Devuelve los directorios registrados actualmente en el autocargador

public function getEventsManager(): ManagerInterface;

Devuelve el administrador de eventos interno

public function getExtensions(): array;

Devuelve las extensiones de archivo registradas en el cargador

public function getFiles(): array;

Devuelve los archivos registrados actualmente en el auto cargador

public function getFoundPath(): string;

Obtiene la ruta cuando una clase fue encontrada

public function getNamespaces(): array;

Devuelve los espacios de nombres registrados actualmente en el autocargador

public function loadFiles(): void;

Comprueba si un archivo existe y a continuación añade el archivo haciendo un require virtual

public function register( bool $prepend = bool ): Loader;

Registrar el método de autocarga

public function registerClasses( array $classes, bool $merge = bool ): Loader;

Registra las clases y sus ubicaciones

public function registerDirs( array $directories, bool $merge = bool ): Loader;

Registra los directorios en los que se pueden localizar las clases “no encontradas”

public function registerFiles( array $files, bool $merge = bool ): Loader;

Registra ficheros que son “no clases” por lo tanto necesitan un “require”. Esto es muy útil para incluir archivos que solo tienen funciones

public function registerNamespaces( array $namespaces, bool $merge = bool ): Loader;

Registra los espacios de nombres y sus directorios relacionados

public function setEventsManager( ManagerInterface $eventsManager ): void;

Establece el administrador de eventos

public function setExtensions( array $extensions ): Loader;

Establece un conjunto de extensiones de fichero que el cargador debe probar en cada intento de localizar el fichero

public function setFileCheckingCallback( mixed $callback = null ): Loader;

Establece la función de retorno de la comprobación de fichero.

// Default behavior.
$loader->setFileCheckingCallback("is_file");

// Faster than `is_file()`, but implies some issues if
// the file is removed from the filesystem.
$loader->setFileCheckingCallback("stream_resolve_include_path");

// Do not check file existence.
$loader->setFileCheckingCallback(null);
public function unregister(): Loader;

Anula el registro del método de autocarga

protected function prepareNamespace( array $namespaceName ): array;

Class Phalcon\Loader\Exception

Código fuente en GitHub

Namespace Phalcon\Loader   Extends \Phalcon\Exception

Phalcon\Loader\Exception

Las excepciones lanzadas en Phalcon\Loader usarán esta clase