我尝试在Laravel中使用SimplePie提要解析器。我在Laravel库文件夹中推送了SimplePie的autoloader.php和库文件夹,然后在start.php中添加了SimplePie的地图
//文件夹树
// start.php map
Autoloader::map(array(
'Base_Controller' => path('app').'controllers/base.php',
'SimplePie' => path('app').'libraries/simple/autoloader.php',
));
// simplepie的新对象
$feed = new SimplePie();
$feed->set_feed_url($feed_url);
$feed->enable_cache(false);
$feed->set_output_encoding('utf-8');
当我从SimplePie创建一个新对象时,我看到了这个错误:
消息:
Autoloader未正确注册
答案 0 :(得分:3)
就我而言,SimplePie确实“只是工作”。
在我的composer.json
中,添加
"simplepie/simplepie": "dev-master"
然后执行“composer update” - 这会将SimplePie下载到Laravel“vendor”文件夹。
然后在您的Controller中,执行
$feed = new SimplePie();
瞧!
答案 1 :(得分:1)
我不熟悉Laravel,但SimplePie安装说明告诉你将php和cache目录放在root中。
"In your root directory, if they don't already exist, create two folders: php and cache."
尝试将它们放在那里而不是像你拥有它们那样嵌套。错误消息表示SimplePie无法找到类文件,因此这是一个路径问题。我也只是坚持“php”目录,而不是创建一个名为“简单”的目录。如果您想尝试修改其代码,您可以在某处更改SimplePie中的目录名称。
答案 2 :(得分:0)
由于 simplepie 具有编辑器兼容性(即可在packagist.org上获得),请使用以下命令行将其添加到项目中
composer require simplepie/simplepie