Class ClassLoader
ClassLoader implements a PSR-0 class loader
See https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md
$loader = new \Composer\Autoload\ClassLoader();
// register classes with namespaces $loader->add('Symfony\Component', DIR.'/component'); $loader->add('Symfony', DIR.'/framework');
// activate the autoloader $loader->register();
// to enable searching the include path (eg. for PEAR packages) $loader->setUseIncludePath(true);
In this example, if you try to use a class in the Symfony\Component
namespace or one of its children (Symfony\Component\Console for instance),
the autoloader will first look for the class under the component/
directory, and it will then fallback to the framework/ directory if not
found before giving up.
This class is loosely based on the Symfony UniversalClassLoader.
Methods summary
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
#
addClassMap( array $classMap )
Parameters
- $classMap
- Class to filename map
|
public
|
#
add( string $prefix, array|string $paths, boolean $prepend = false )
Registers a set of PSR-0 directories for a given prefix, either
appending or prepending to the ones previously set for this prefix.
Registers a set of PSR-0 directories for a given prefix, either
appending or prepending to the ones previously set for this prefix.
Parameters
- $prefix
- The prefix
- $paths
- The PSR-0 root directories
- $prepend
- Whether to prepend the directories
|
public
|
#
addPsr4( string $prefix, array|string $paths, boolean $prepend = false )
Registers a set of PSR-4 directories for a given namespace, either
appending or prepending to the ones previously set for this namespace.
Registers a set of PSR-4 directories for a given namespace, either
appending or prepending to the ones previously set for this namespace.
Parameters
- $prefix
- The prefix/namespace, with trailing '\'
- $paths
- The PSR-0 base directories
- $prepend
- Whether to prepend the directories
Throws
|
public
|
#
set( string $prefix, array|string $paths )
Registers a set of PSR-0 directories for a given prefix,
replacing any others previously set for this prefix.
Registers a set of PSR-0 directories for a given prefix,
replacing any others previously set for this prefix.
Parameters
- $prefix
- The prefix
- $paths
- The PSR-0 base directories
|
public
|
#
setPsr4( string $prefix, array|string $paths )
Registers a set of PSR-4 directories for a given namespace,
replacing any others previously set for this namespace.
Registers a set of PSR-4 directories for a given namespace,
replacing any others previously set for this namespace.
Parameters
- $prefix
- The prefix/namespace, with trailing '\'
- $paths
- The PSR-4 base directories
Throws
|
public
|
#
setUseIncludePath( boolean $useIncludePath )
Turns on searching the include path for class files.
Turns on searching the include path for class files.
Parameters
|
public
boolean
|
#
getUseIncludePath( )
Can be used to check if the autoloader uses the include path to check
for classes.
Can be used to check if the autoloader uses the include path to check
for classes.
Returns
boolean
|
public
|
#
register( boolean $prepend = false )
Registers this instance as an autoloader.
Registers this instance as an autoloader.
Parameters
- $prepend
- Whether to prepend the autoloader or not
|
public
|
#
unregister( )
Unregisters this instance as an autoloader.
Unregisters this instance as an autoloader.
|
public
boolean|null
|
#
loadClass( string $class )
Loads the given class or interface.
Loads the given class or interface.
Parameters
- $class
- The name of the class
Returns
boolean|null True if loaded, null otherwise
|
public
string|false
|
#
findFile( string $class )
Finds the path to the file where the class is defined.
Finds the path to the file where the class is defined.
Parameters
- $class
- The name of the class
Returns
string|false The path if found, false otherwise
|