MacBookにXAMPPをインストールしました。 PHPとMySQLは正常に動作しているので、mongoでフォローアップしました。次のようにしました。
ここまでは順調ですね。次のように、完全なmongo.soパスを `/etc/php.iniの最後に追加しました。
[mongo]
extension =/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/mongo.so
問題:
ただし、php --version
と入力すると、次のようになります。
PHP警告:PHPスタートアップ:mongo:モジュールを初期化できません
モジュールAPI = 20121212でコンパイルされたモジュール
モジュールAPI = 20100525でコンパイルされたPHP
これらのオプションは、0行目の不明で一致する必要があります
PHP 5.4.24(cli)(ビルド:2014年1月19日21:32:15)
私が試したこと:
以下を介してOSXのPHP)を更新することにより、上記のエラーをなんとか取り除くことができました(注意:取り除く):curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5
次に、次の行を.bash_profileに追加しました:export PATH=~/bin:/usr/local/php5/bin:$PATH
php -m
は、モジュールの1つとしてmongoをリストするようになり、上記のエラーは発生しなくなりました。
ただし、phpinfo()にはmongoがなく、mongoクライアントを使用してWebページを実行すると、次のエラーが発生します:
FatalErrorExceptionクラス 'MongoClient'が見つかりません
それで、私は次のことを繰り返しました:Sudo /Applications/XAMPP/xamppfiles/bin/pecl install mongo
そして今、私のモンゴは最新であると私に言っています:
pecl/mongoはすでにインストールされており、リリースされたバージョン1.5.5と同じです。
追加情報:
php --version
または/Applications/XAMPP/xamppfiles/bin/php --version
と入力しましたか?そして、どのphp.iniにその行を追加しましたか? /etc/php.ini
または/Applications/XAMPP/xamppfiles/etc/php.ini
へ?
最初のパスは常にOS-Xのデフォルトを参照しますPHP(PHP5.4)、後のパスはXAMPPを参照しますPHP(PHP5.5であり、異なるAPIとPHP5.4)。
したがって、PHP5.5(XAMPP)用にモジュールをコンパイルし、PHP5.4(OS-X)に追加したと仮定します。それはまったく機能しません!正しいphp.iniファイルの最後にmongoso-Pathを追加する必要があります。これは、あなたの場合、/Applications/XAMPP/xamppfiles/lib/php.ini
にあるXAMPP用のファイルです。
私はこれに何日も問題がありました。 XAMPP\etc\php.ini
であることがわかりました。 /usr/local/php5-5.6.25-20160831-101628/lib/php/extensions/no-debug-non-zts-20131226/mongo.so
を追加しましたが、正常に機能しました。ターミナルのmongo.so
ファイルの場所を見つけるには、locate mongo.so
と入力します