Class Phalcon\Loader

implements Phalcon\Events\EventsAwareInterface


This component helps to load your project classes automatically based on some conventions


use Phalcon\Loader;

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

// Register some namespaces
        "Example\Base"    => "vendor/example/base/",
        "Example\Adapter" => "vendor/example/adapter/",
        "Example"          => "vendor/example/",

// Register autoloader

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


public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager)


public getEventsManager ()


public setExtensions (array $extensions)

Sets an array of file extensions that the loader must try in each attempt to locate the file

public getExtensions ()

Returns the file extensions registered in the loader

public registerNamespaces (array $namespaces, [mixed $merge])

Register namespaces and their related directories

public setFileCheckingCallback (mixed $callback = null): Phalcon\Loader

Sets the file check callback.


// Default behavior.

// Faster than `is_file()`, but implies some issues if
// the file is removed from the filesystem.

// Do not check file existence.

A Phalcon\Loader\Exception is thrown if the $callback parameter is not a callable or null;

protected prepareNamespace (array $namespace)

public getNamespaces ()

Returns the namespaces currently registered in the autoloader

public registerDirs (array $directories, [mixed $merge])

Register directories in which “not found” classes could be found

public getDirs ()

Returns the directories currently registered in the autoloader

public registerFiles (array $files, [mixed $merge])

Registers files that are “non-classes” hence need a “require”. This is very useful for including files that only have functions

public getFiles ()

Returns the files currently registered in the autoloader

public registerClasses (array $classes, [mixed $merge])

Register classes and their locations

public getClasses ()

Returns the class-map currently registered in the autoloader

public register ([mixed $prepend])

Register the autoload method

public unregister ()

Unregister the autoload method

public loadFiles ()

Checks if a file exists and then adds the file by doing virtual require

public autoLoad (mixed $className)

Autoloads the registered classes

public getFoundPath ()

Get the path when a class was found

public getCheckedPath ()

Get the path the loader is checking for a path