【问题标题】:How to use Horde/Imap_Client with Yii Framework如何在 Yii 框架中使用 Horde/Imap_Client
【发布时间】:2015-03-16 00:57:00
【问题描述】:

我试图弄清楚如何使用 Horde Imap 客户端库在我的 Yii 框架应用程序中导入电子邮件,但我不知道如何安装和加载它。

【问题讨论】:

    标签: yii imap plesk horde


    【解决方案1】:

    请按以下步骤操作:

    1) 确保您的机器/服务器中安装了 PEAR

    2) 按照文档中的说明安装 Horde horde_imap_client http://dev.horde.org/imap_client/install.php

    pear channel-discover pear.horde.org
    pear install horde/horde_imap_client
    

    3) 安装 Horde Autoloader 因为默认没有安装

    pear install horde/horde_autoloader
    

    4) 在加载 Yii 之前需要自动加载器

    require_once 'Horde/Autoloader/Default.php';
    

    如果您打算从 Yii 控制台命令中使用该库,您可以在入口脚本 index.php 中执行此操作,也可以在 yiic.php 中执行此操作。

    5) 现在您应该可以通过控制器或 Yii 命令执行此操作了:

    try {
        $imap = new Horde_Imap_Client_Socket(array(
            'username' => 'user@example.com',
            'password' => 'pwd',
            'hostspec' => 'mail.example.com',
            'port' => 993,
            'secure' => 'ssl',
        ));
    
        $query = new Horde_Imap_Client_Search_Query();
        $results = $imap->search('INBOX', $query);
        var_dump($results['match']);
    
    } catch (Horde_Imap_Client_Exception $e) {
        // Any errors will cause an Exception.
        die($e->getMessage());
    }
    

    6) 最后一点:

    如果您在服务器上使用 Plesk 面板,由于 open_basedir 限制,您将无法加载 PEAR 库,因此您必须将 PEAR 路径 (/usr/share/pear) 添加到 open_basedir 设置。根据 Plesk 的版本,对于旧版本,您必须使用 vhost.conf 文件来执行此操作,如:http://www.smerret.com/computers/linux/control-panels/using-pear-with-plesk,对于较新的 Plesk 版本,您可以直接从 Plesk 面板转到域的 PHP 配置并查找open_basedir 设置。

    【讨论】:

      猜你喜欢
      • 2014-05-14
      • 2012-09-29
      • 2017-11-16
      • 2012-07-06
      • 1970-01-01
      • 1970-01-01
      • 2013-01-29
      • 2015-01-26
      • 1970-01-01
      相关资源
      最近更新 更多