发布于 2015-08-27 16:51:45 | 146 次阅读 | 评论: 0 | 来源: 网络整理
Libraries that follow the PSR-4 standard can be loaded with the Psr4ClassLoader
.
注解
If you manage your dependencies via Composer, you get a PSR-4 compatible autoloader out of the box. Use this loader in environments where Composer is not available.
小技巧
All Symfony components follow PSR-4.
The following example demonstrates how you can use the
Psr4ClassLoader
autoloader to use
Symfony’s Yaml component. Imagine, you downloaded both the ClassLoader and
Yaml component as ZIP packages and unpacked them to a libs
directory.
The directory structure will look like this:
libs/
ClassLoader/
Psr4ClassLoader.php
...
Yaml/
Yaml.php
...
config.yml
demo.php
In demo.php
you are going to parse the config.yml
file. To do that, you
first need to configure the Psr4ClassLoader
:
use SymfonyComponentClassLoaderPsr4ClassLoader;
use SymfonyComponentYamlYaml;
require __DIR__.'/lib/ClassLoader/Psr4ClassLoader.php';
$loader = new Psr4ClassLoader();
$loader->addPrefix('SymfonyComponentYaml', __DIR__.'/lib/Yaml');
$loader->register();
$data = Yaml::parse(file_get_contents(__DIR__.'/config.yml'));
First of all, the class loader is loaded manually using a require
statement, since there is no autoload mechanism yet. With the
addPrefix()
call, you
tell the class loader where to look for classes with the
SymfonyComponentYaml
namespace prefix. After registering the autoloader,
the Yaml component is ready to be used.