0

予備情報:

  1. CakePHP 2.x
  2. ローカルホストでXAMPPを使用するUbuntu

Webアプリの一部として、メールの受信トレイで新しいメッセージをチェックするスクリプトを作成しました。新しいメッセージがあると、スクリプトは電子メールの本文をデータベースに書き込みます。このコードはすべてコントローラーにあります。スクリプトはうまく機能しましたが、まったく問題はありませんでした。

代わりに、これとまったく同じコードをシェルで使用して、Webブラウザーからページにアクセスする代わりに、このタスクを実行するためのcronジョブを設定できるようにすることにしました。コードをシェルスクリプトに移植した後、シェルを実行すると、次のエラーが発生します。

PHP Fatal error:  Call to undefined function imap_open()in /path/to/file.php on line 25.

そしてもちろん、明らかな質問は「imap関数はphp構成にロードされていますか?」です。はい、そうです。 ブラウザ経由でコントローラコードにアクセスするときにimap関数を使用しても問題がない理由はわかりませんが、シェルを使用するとエラーが発生します。

何かご意見は?

前もって感謝します。

ティム

4

1 に答える 1

0

コマンドラインphpがimapサポートで構築されていないか、モジュールがcliphpに対して有効になっていないと思います。http://ubuntuforums.org/showthread.php?t=977596を参照してください。したがって、それを確認するか、imapサポートを使用してCLIをコンパイルするか、imapサポートが組み込まれたパッケージを入手してください。

于 2012-07-02T13:30:25.367 に答える