找不到类'Symfony\Component\Yaml\Yaml'

Nic*_*ens 3 autoload symfony composer-php

我在最后一天一直在努力让Symfony Yaml解析器在我的应用程序中工作.

composer.json看起来像这样;

{
"require": {
    "symfony/class-loader": "2.4.*@dev",
    "symfony/yaml": "2.4.*@dev",
    "facebook/php-sdk": "dev-master"
},
"autoload": {
    "psr-0": {
        "MyApp": "src/"
    }
}
Run Code Online (Sandbox Code Playgroud)

我在我的应用程序中使用它:

use Symfony\Component\Yaml\Parser;

$parser = new Parser();
var_dump( $parser->parse( file_get_contents('config.yml') ) );
Run Code Online (Sandbox Code Playgroud)

然后我收到这个错误:

(!)致命错误:第16行的/Projects/my-app/web/index.php中找不到类'Symfony\Component\Yaml\Yaml'

UniversalClassLoader(from "symfony/class-loader")工作得很好,当我检查加载了哪些命名空间时,它Symfony\Component\Yaml是数组中的第一个.

我的IDE(PHPStorm)在类名下面给出了一条波浪线,"存在多个定义".一个是进入真正的供应商文件夹,另一个是指文件内的composer.phar文件(只读).

有谁知道我做错了什么?

Cer*_*rad 6

显示您的引导代码.特别是在创建自动加载器的地方.

通常,您应该使用作曲家生成的自动加载文件而不是S2.

这有效:

require_once __DIR__ . '/../vendor/autoload.php';

use Symfony\Component\Yaml\Parser;

$parser = new Parser();

var_dump( $parser->parse( file_get_contents('config.yml') ) );
Run Code Online (Sandbox Code Playgroud)