5

新しい Macbook で最新の PHP バージョンを使用したかったのですが、php インストールにはデフォルトで imap 関数が含まれていません。必要な特定の関数が 1 つあります。つまり、「imap_rfc822_parse_headers」関数ですが、PHP を再コンパイル、ビルド、およびインストールする気はありません (c-client と imap.so を事前にインストールするのにかかる労力は言うまでもありません)。 . 複雑な手順 (私が見つけたそれぞれの手順は多少異なります) によって、セットアップが決して簡単ではない現在のインストールが台無しになるのではないかと心配しています。

imap を PHP にインストールする簡単な方法はありますか? 関連するメモとして、必要な機能に代わるクラスベースの代替手段はおそらくありますか?

4

1 に答える 1

11

私はついに解決策を見つけました。そのほとんどはここにありました: http://www.september28.co.uk/blog/2011/11/24/php-imap-support-in-mac-os-x-lion-without-recompiling-php/

私のマシンは、MacOSX 10.7.4、PHP 5.4 を搭載した 2011 年後半の Macbook Pro です。次の手順でインストールします: http://www.hirmet.com/mac-os-x-lion-upgrade-to-php-5-4

以下は、同様または同一のセットアップを使用するユーザー向けのステップバイステップです。

この URL から imap ソースをダウンロードします。最新の日付が「Z」で終わらないものに注目してください: ftp://ftp.cac.washington.edu/imap/

アーカイブを解除し、フォルダーに移動して、次のコマンドを実行します。

$ make osx EXTRACFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"

上記のコマンドを実行すると、一連の警告が表示されますが、september28 のブログ投稿で最初に提案されたコマンドとは異なり、正常に完了するはずです。

次に、次の操作を行います。

$ sudo cp c-client/*.h /usr/local/include/
$ sudo cp c-client/*.c /usr/local/lib/
$ sudo cp c-client/c-client.a /usr/local/lib/libc-client.a

これが完了したら、(回答の 2 番目のリンクに従って) 私のようにカスタム アップグレードを行った場合は、ダウンロードした php ソース フォルダーに移動し、システムの imap.so 拡張機能をビルドします。カスタム バージョンをビルドしていない場合は、インストールしたバージョンの PHP ソースをダウンロードして使用するだけで問題ありません。

$ cd ~/Downloads/Php-5.4.4/ext/imap
$ phpize
$ ./configure --with-imap==/usr/local/imap-2007 --with-kerberos --with-imap-ssl
$ make

完了したら、次の操作を行います。

$ sudo cp modules/imap.so /usr/lib/php/extensions/no-debug-non-zts-20100525/

...または、PHP 拡張フォルダーが異なる場合は、それを入れます (場所は phpinfo(); で確認できます)。

Apache を再起動すると、準備完了です。

$ sudo apachectl restart
于 2012-06-22T15:07:36.613 に答える