Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何通过Laravel IoC容器访问Orchestra Xml解析器_Php_Xml_Laravel_Parsing_Ioc Container - Fatal编程技术网

Php 如何通过Laravel IoC容器访问Orchestra Xml解析器

Php 如何通过Laravel IoC容器访问Orchestra Xml解析器,php,xml,laravel,parsing,ioc-container,Php,Xml,Laravel,Parsing,Ioc Container,我使用的是Laravel5.1。我想使用XML解析器,我已经搜索并找到了最常用的XML解析器。因此,我已经完成了在中给出的所有安装和配置步骤。我在config/app.php的providers部分添加了Orchestra\Parser\XmlServiceProvider::class,在别名部分添加了'XmlParser'=>Orchestra\Parser\Xml\Facade::class 现在在我的控制器中,我添加了它的名称空间,如use-Orchestra\Parser\Xml\Fa

我使用的是Laravel5.1。我想使用XML解析器,我已经搜索并找到了最常用的XML解析器。因此,我已经完成了在中给出的所有安装和配置步骤。我在
config/app.php
providers
部分添加了
Orchestra\Parser\XmlServiceProvider::class
,在
别名部分添加了
'XmlParser'=>Orchestra\Parser\Xml\Facade::class

现在在我的控制器中,我添加了它的名称空间,如
use-Orchestra\Parser\Xml\Facade在我的控制器顶部。但是当我尝试在我的行动中使用它的功能时,比如

$xml = XmlParser::load($xml_document);
它生成错误声明

Class 'App\Http\Controllers\XmlParser' not found

因此,我想知道在
laravel5.1
中是否有其他方法可以使用这些软件包,如果有人使用了
chestration
,那么我在做一些错误的事情

在Laravel 5.1中,控制器位于命名空间中。XmlParser位于另一个命名空间中。您需要在控制器中包含该名称空间


因为文档已经描述了facade别名的注册:

'XmlParser' => Orchestra\Parser\Xml\Facade::class,
您可以使用
\XmlParser::load()
,也可以导入别名

use XmlParser;
或者导入完整的命名空间

use Orchestra\Parser\Xml\Facade as XmlParser;

它看起来好像在控制器内搜索它

未找到类“App\Http\Controllers\XmlParser”

因此:

$xml=XmlParser::load($xml\u文档)

需要:

$xml=\XmlParser::load($xml\u文档)


应该解决这个问题

名称空间\Parser\Xml无法解决问题。未找到它正在生成类“Orchestra\Parser\Xml\Controller”