0

データベースにアクセスしてファイル転送を行う CRON ジョブを実行しようとしています。ファイル転送を行ったばかりの別の CRON ジョブから適応させて、次のコマンドを入力しました。

php -qn -d memory_limit=128M 

私のCRONファイルの前に。ファイルを転送していたので memory_limit を追加したことを覚えていますが、なぜ -qn -d を使用したのか思い出せませんでした。Zend_Db_Adapter_Pdo_Mysql を使用してデータベースにアクセスする必要がある別の CRON ジョブに同じコマンドをコピーすると、次のエラーが発生しました。

「このアダプターには PDO 拡張機能が必要ですが、拡張機能がロードされていません」というエラーが表示されます

そして、それは私がコマンドを使用したときだけでした

php -q

エラーが消えたこと。2 つの質問、次に:

1) CRON ジョブに関して、「-qn -d memory_limit=128M」と「php -q」の違いは何ですか?

2) 後者ではなく前者のコマンドを使用すると、なぜ PDO の問題が発生するのですか?

-エリック

4

1 に答える 1

1

この-nフラグは「php.ini ファイルを使用しない」ことを意味するため、拡張機能をロードしていません (PDO エラーが発生します)。この-dフラグを使用すると、PHP 構成変数を設定できるため、例ではデフォルトのメモリ制限をオーバーライドしています。

于 2013-03-04T00:58:40.610 に答える