これは機能します:
setcookie('$id', $date);
しかし、これはクッキーを設定しません:
setcookie('$id', $date, 1000);
何か案は?
有効期限は Unix タイムスタンプにする必要があります。php.net/setcookieからの引用:
Cookie の有効期限が切れる時間。これは Unix タイムスタンプなので、エポックからの秒数です。つまり、おそらく time() 関数に有効期限が切れるまでの秒数を加えて設定します。
この値は、1970 年 1 月 1 日木曜日から 1000 秒後の値を表します。
現在のtime()に 1000 秒を追加します。
setcookie('$id', $date, time() + 1000);
3 番目のパラメーターは次のようになります。
setcookie('$id', $date, (time() + 1000));
1000
は過去の時間であるため、Cookie は作成されません。
このアプローチでは、基本的に を伝えているcurrent timestamp plus 1000 seconds
ため、Cookie が正しく作成されます。
期限切れ
Cookie の有効期限が切れる時間。これは Unix タイムスタンプなので、エポックからの秒数です。つまり、おそらく time() 関数に有効期限が切れるまでの秒数を加えて設定します。
( setcookie() ドキュメントを参照)