1

_SESSION 変数をチェックする PHP スクリプトがあります (セッションの作成時に、次の変数$_SESSION['LAST_ACTIVITY']=time()を設定しています)。

スクリプトは、関連するセッション ID にアクセスできます。セッション ID を設定し、セッションを開始して、変数をチェックします。

スクリプトを手動で実行すると、完全に機能します。以前に開始されたセッションを開始し、_SESSION 変数を取得します。

ただし、同じスクリプトをCRON経由で実行すると、_SESSION変数が設定されません...

理由はありますか?

4

1 に答える 1

0

を呼び出すとsession_start()、php は $_COOKIE、場合によっては $_REQUEST でセッション ID を探します。ウェブサーバーがないため、これらはコマンドライン バージョンには存在しません。

セッションIDを手動で指定できますsession_start($id);

session.save_path設定が Web サーバーとコマンドライン php バージョンで同じであることを確認してください。それらは異なる場合があります。両方のバージョンで phpinfo() を介して確認してください。

于 2012-05-21T22:32:57.053 に答える