PHP imap_open() 命令行错误

发布于 2024-10-19 17:55:20 字数 593 浏览 2 评论 0原文

我正在尝试从命令行运行 PHP 页面,该页面使用 imap_open() 打开电子邮件收件箱。该脚本在浏览器中运行良好。

PHP 脚本:

$imap_stream    = imap_open($host,$username,$pass);

命令:

php -c /etc/php.ini /home/public_html/inc/mailGet.php

错误:

PHP Fatal error:  Call to undefined function imap_open() in /home/public_html/inc/mailGet.php on line 13

我在命令中包含了正确的 php.ini 和 -c /etc/php.ini,以确保它使用与浏览器相同的 .ini 文件。 (这是我的 phpinfo(); 页面中所述的 .ini 路径)。

我正在运行 Apache2(Centos5.5) 和 PHP 5.2.6。有人可以建议吗?

谢谢你,

克里斯。

I am trying to run a PHP page from the command line which uses imap_open() to open an email inbox. The script works fine in the browser.

PHP Script:

$imap_stream    = imap_open($host,$username,$pass);

Command:

php -c /etc/php.ini /home/public_html/inc/mailGet.php

Error:

PHP Fatal error:  Call to undefined function imap_open() in /home/public_html/inc/mailGet.php on line 13

I included the correct php.ini with -c /etc/php.ini in the command to make sure it was using the same .ini file as the browser. (this is the path to the .ini as stated in my phpinfo(); page).

I am running Apache2(Centos5.5) with PHP 5.2.6. Can anybody please advise?

Thank you,

Chris.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

旧竹 2024-10-26 17:55:20

我发现使用 CLI-PHP 时有时需要在 php.ini 中定义扩展名。尝试将extension=imap.so添加到您的php.ini中,并仍然将其包含在您的命令中(-c /etc/php.ini)

我必须通过添加extension=mysql.so对mysql做同样的事情

即使扩展将显示在你的 phpinfo() 中;它并不总是在 CLI PHP 中加载。

I have found i need to define the extension sometimes in my php.ini when using CLI-PHP. Try adding extension=imap.so to your php.ini and still include it with your command (-c /etc/php.ini)

I had to do the same thing for mysql by adding extension=mysql.so

Even though the extension will show in your phpinfo(); it doesnt always load in CLI PHP.

话少情深 2024-10-26 17:55:20

IMAP 功能是一个扩展。根据手册,PHP需要使用进行编译--with-imap[=DIR] 它似乎不适合你的情况。

也许您的系统上有多个命令行 php 实例?

作为最后一根稻草,如果 CLI PHP 无法配备所需的功能,我想您可以在 crontab 中执行 http 请求:

wget http://localhost/path_to_script.php

The IMAP functions are an extension. According to the manual, PHP needs to have been compiled with --with-imap[=DIR] it doesn't seem to be in your case.

Maybe you have multiple instances of command line php on your system?

As a last straw, if CLI PHP can't be equipped with the needed functions, I guess you could do a http request in your crontab:

wget http://localhost/path_to_script.php
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文