2012-04-07 28 views
4

イベントカレンダーをhttp://www.phpcodeworks.com/pec/installationからダウンロードします。 \ xamppの\ htdocsに\ MSJ \私は置き換えのfunctions.php:とmktime VS時間PHP4 VS PHP5

$days = date("t", mktime(0,0,0,$month,1,$year)); 

$days = date("t",` time(0,0,0,$month,1,$year)); 

が、それぞれの日は行くそうに、私は、そのため、ブラウザはFが言っPHP 5.3.Xを使用しています24時間後に次のようにします。

画像$days = date("t", mktime(0,0,0,$month,1,$year));使用:$days = date("t", time(0,0,0,$month,1,$year));を使用した場合

enter image description here

イメージ:

enter image description here

+0

私はあなたのインラインとブロックコードの書式設定を改善しました(承認には数分かかるかもしれません)ので、質問はより明確になりますが、スクリーンショットでは+1です! – halfer

+2

エラー報告がE_ALLであることを確認し、警告および通知がないことを確認します。また、この問題はタイムゾーンにも当てはまる可能性があります。タイムゾーンなしの真夜中は、タイムゾーンが適用されたときに前日に戻ってしまう可能性があります。 – halfer

+1

私が知る限り、 'time'関数は引数を取っていません。 http://php.net/manual/en/function.time.phpを参照してください。 – Machiel

答えて

10

mktime()機能は、UNIXエポックからの秒数を返します(1970年1月1日午前0時00分:00 GMT)をパラメータとして提供された日時に変更します。

time()関数は、Unix Epoch(January 1 1970 00:00:00 GMT)から関数が実行されるまでの時間を秒単位で返します。合格するパラメータはありません。特定の日付をブラウズするとき

だから、あなたは常に別の番号にあなたがそれを実行するたびに返されます mktime()代わりの time()time()を使用する必要があります。そのため、カレンダーは(特定の日付を表示しようとしても)表示するたびに変更されます。

Hightlight:

mktime() - 指定された日付を表す秒数(必要なパラメータのマニュアルを参照してください)。

time() - 現在、この関数のパラメータはありません。

mktime()は、この状況に適した機能に見えます。

関連する問題