【问题标题】:How to resolve ReflectionException Class orchestra.parser.xml does not exist如何解决 ReflectionException Class orchestra.parser.xml 不存在
【发布时间】:2016-07-20 03:44:55
【问题描述】:

我正在尝试使用 Orchestral/parser 创建一个 xml 文件

https://github.com/orchestral/parser

我正确安装它并在我的控制器中这样调用它:

use Orchestra\Parser\Xml\Facade as XmlParser;

...

class Product extends Controller
{    
    public function createProduct()
   {
        $xml    = XmlParser::load("test.xml");
        $xmlR = $xml->parse([
            'id' => ['uses' => 'xmlR.id'],
        ]);
   }
}

但我收到以下错误消息:

Container.php 第 741 行中的反射异常:类 Orchestra.parser.xml 不存在

因此我不太明白负载是什么意思(在我的例子中是 load("test.xml")。

【问题讨论】:

  • 您是否将别名添加到应用配置文件中? 'XmlParser' => Orchestra\Parser\Xml\Facade::class,
  • 是的,在 config/app.php 中做到了

标签: php xml laravel parsing ioc-container


【解决方案1】:

您是否尝试使用以下命令刷新自动加载:composer dump-autoload

【讨论】:

  • Ty 回答,执行了该命令但仍然收到相同的错误消息
【解决方案2】:

您的错误清楚地表明您没有在 config/app.php 文件中设置包(通过列出 Orchestral XML 解析器的 provider)。

要解决它,请添加Orchestra\Parser\XmlServiceProvider::class 到您的 config/app.php 文件中的提供程序列表中,如下所示:

'提供者' => [

// 其他 Laravel 服务提供者

Orchestra\Parser\XmlServiceProvider::class,

],

【讨论】:

    【解决方案3】:

    清除缓存解决了我的问题:

    php artisan cache:clear
    php artisan config:cache
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-11
      • 1970-01-01
      • 2017-10-27
      • 2016-07-26
      • 2019-11-04
      • 2020-05-05
      相关资源
      最近更新 更多