私は Ubuntu 64 ビットで LAMPP を使用しています。ターミナルを使用して PHP ファイルを実行しようとすると、undefined mysql_connect エラーが発生します。しかし、ブラウザを使用して PHP ファイルをロードすると、すべて正常に動作します。extension=mysql.so の前のセミコロンを削除して php.ini を編集し、lampp を再起動しようとしましたが、「動的ライブラリをロードできません」というエラーが発生します。この問題を解決するにはどうすればよいでしょうか? crontab を使用して PHP スクリプトを実行する必要があるため、これは私にとって重要です。
ありがとう。
PHP Fatal error: Call to undefined function mysql_connect() in /opt/lampp/htdocs/setrandomport-message.php on line 15
extension=msql.so
PHP Startup: Unable to load dynamic library '/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/msql.so' - /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0
答え1
つまり、PHP の 2 つの異なるバージョンがあるために混乱しているようです。
lampp パッケージの一部として付属しているバージョンがあり/opt/lampp/
、パッケージ マネージャー経由でインストールした php-cli があります。簡単に言えば、パッケージ マネージャー経由で php5-mysql モジュールもインストールするだけですapt-get install php5-mysql
。
異なるバージョンの PHP 間でモジュールを混在させることはできません。 2 つの別個のインストールを選択した場合は、それらを別々に管理する必要があります。