【问题标题】:Use simplepie with composer将 simplepie 与作曲家一起使用
【发布时间】:2019-11-04 17:35:46
【问题描述】:

我正在使用 PHP 7.3.5Composer version 1.8.5 并希望使用 "simplepie/simplepie": "^1.5" 从 rss 提要中获取数据。

运行以下脚本时出现错误:Fatal error: Uncaught Error: Class 'SimplePie\SimplePie' not found

<?php
require 'vendor/autoload.php';

use SimplePie\SimplePie;

$url = 'https://www.reddit.com/r/worldnews/top.rss?t=day';

$feed = new SimplePie();
$feed->set_feed_url($url);
$feed->init();

如何在composer中正确使用simplepie?

【问题讨论】:

  • 是什么让您认为这可行?据我所知,Simplepie 不使用任何命名空间,演示文件也没有显示这个

标签: php simplepie


【解决方案1】:

你可以试试:

use SimplePie;

这在我的一个项目中有效。

更完整的示例(在 composer.json 中:“simplepie/simplepie”:“^1.5”):

use SimplePie;

class RssParser{
    public $url;
    private $feed;
    private $message; // personal class for holding error...

    function __construct($url){

        if (!empty($this->url)) {
            $this->feed = new SimplePie();
            $this->feed->set_feed_url($this->url);
            $this->feed->set_cache_duration(600);

            if ($this->feed->init() === false) {
                $this->message->error('rss-parser NO SimplePie init: ' . $this->feed->error());
            } else {
                $this->feed->handle_content_type();
            }
        } else {
            $this->message->error('rss-parser: no url');
        }
    }

    ...

我不是作曲家/自动加载专家,但由于 Simplepie 使用自己的自动加载器,这可以解释本文的写作。

【讨论】:

    猜你喜欢
    • 2013-12-05
    • 2016-03-05
    • 2016-11-07
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 2017-03-13
    • 2013-09-23
    相关资源
    最近更新 更多