問題タブ [year2038]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
383 参照

php - PHP 2038 年はバグではありませんか?

私は PHP が初めてで、読んでいる本から、2038 年問題があることに気付きました。これは、タイムスタンプを使用すると、到達できる最も遠い日付が 2038 年 1 月 19 日になることを示しています。この制約を克服するために、dateTimeオブジェクトを使用することをお勧めします。ただし、PHP でテストすると (PHP 5.6.6 で MAMP を使用)、より大きな日付でタイムスタンプを使用しても、完全に機能するようです。

たとえば、次のコードに注意してください。

PHP サーバーが 2038 年問題に悩まされないのはなぜですか? なぜ正しい値を出力できるのですか?タイムスタンプはそれほど大きな値を保持できませんよね?

0 投票する
0 に答える
110 参照

php - 2038 年 Excel シートを PHP に読み込む

Php Excelを使用して Excel Sheets を読み取る PHP プログラムがあります。Excel シートには、「yyyy-mm-dd hh-mm-ss」にフォーマットされた列が 1 つしかありません。

Php Excel を使用してこの Excel シートを読み取ると、2038 年を超える日付になるまで、すべて正常に動作します。

今、私は 2038 年の問題を読み、それを検出してユーザーが 2038 年以降の日付を入力したときにエラー メッセージを返すことができると考えましたが、日付が間違っているためできません。

さらに悪いことに、有効な日付として入力されます。

これは私が試したさまざまな値の例です (これは PHP に読み込まれた後の配列です):

出力は完全にランダムに見えますが、それでも有効な日付です。

ユーザーにメッセージを返すために、2038 年を超える日付をキャッチできるようにしたいと考えています。

PHP 32ビットを実行しています。

これは、それを配列に読み取って出力するコードです。

アイデア?

0 投票する
1 に答える
963 参照

php - PHP: setcookie() は 2038 年以降に期限切れになります

現在、私はすべての PHP UNIX タイムスタンプを2k38 issueを超えて動作するように変換しています。

setcookie()の 有効期限パラメーターが UNIX タイムスタンプを使用していることに気付きました。おそらくDateTimeクラスを使用して、代替方法で有効期限を設定する方法はありますか?

有効期限に関する PHP ドキュメントから:

注: 日付形式 Wdy、DD-Mon-YYYY HH:MM:SS GMT とは対照的に、expire パラメータが Unix タイムスタンプを使用していることに気付くかもしれません。これは、PHP が内部でこの変換を行うためです。

0 投票する
1 に答える
1388 参照

r - R apply.weekly() は、日次から週次の時系列に変換するときに誤った期間を返します

時系列データを扱っていて、apply.weekly(). 特定の日付以降、週が正しく集計されないように見えます。

これにより、次の出力が生成されます。

最終期間が 15 日間であることに注目してください。ここで、代わりに 2010 年の日付を使用すると、期待どおりの結果が得られます。つまり、

上記のコードでは、次の出力が生成されます。

私が知らない2038年について何か奇妙なことがありますか?

このコードを 64 ビット Windows 7 Enterprise で実行sessionInfo()すると、次の出力が返されます。

0 投票する
4 に答える
6067 参照

sql-server - エポックを DateTime SQL Server に変換 (2038 年を超える)

エポックが2038年を超える場合、エポックをDateTime SQL Serverに変換する方法は?

Convert Epoch to DateTime SQL Serverの回答は機能しません。

例:

2055 年 12 月 30 日木曜日 16:00:00 GMT

0 投票する
1 に答える
278 参照

sql-server - SQL Server でエポックの TIME を削除する方法

SQL Server でエポック形式の TIME を削除するには?

例: 2713795200000は、 Thu, 30 Dec 2055 16:00:00 GMTではなく、 Thu, 30 Dec 2055 00:00:00を返す必要があります。

0 投票する
1 に答える
340 参照

php - PHP - ループに追加している間、2038 で日付を 1970 にリセットする

PHP ベースの Web アプリでユーザーが提供した整数値に基づいて、年と月のリストを生成しようとしています。これを行っているときに、2038 年のバグに直面しました。ループが 2038 に達したときに、年が 1970 にリセットされました。私が使用している PHP のバージョンは 5.4 で、このリンクにある解決策をグーグルで検索して適用しましたが、うまくいきません。 、phpの2038バグに対して他の解決策を試した人はいますか?

ここに私のPHPコードがあります:

.

0 投票する
2 に答える
506 参照

perl - perl が 2038 年を超える UNIX タイムスタンプを変換できないのはなぜですか?

以下のperlコマンドを使用して、エポック時間を読み取り可能なローカル時間に変換しようとしています:

2038 年未満は正しく変換できますが、2038 年よりも大きい年は期待どおりの結果が得られませんでした。

修正方法を教えてください。ありがとう。