1

私はJSを使用してDataTableおり、Date Columnソート可能でなければなりません。しかし、JS は Dates が Strings としてインポートされたと想定しているため、ソートできません。(実際の時系列順ではなく、文字列順のみ)

次に、グーグルで検索したところ、JS は JS Dates のみをソートできることに気付きました。つまり、PHP Date を JS Dates に変換する必要があります。

しかし、私はまだそれを正しく取得できません。私がしたことは次のとおりです。

<script>
    var jsDate = new Date(
                        <?php echo $phpDate_y; ?>,
                        <?php echo $phpDate_m; ?>,
                        <?php echo $phpDate_d; ?>
                    ); // $phpDate will be "2012-04-30";
</script>

ただし、レンダリング時には、jsDate は次のように変換されます。

Thu Oct 03 1935 00:00:00 GMT+0730 (MALST)

はるかに違う!!
そして、私のタイムゾーンの場所はSingaporeです。
他の適切な方法はありますか pls :(

4

2 に答える 2

2

完全な日付文字列を JS Date オブジェクトに渡して構築することができるので、現在のように分割するのではなく、ISO 日付形式の 1 つで $phpDate を Date コンストラクターに渡してみてください。

// $phpDate = '2012-08-17 12:29:06'
var jsDate = new Date("<?php echo $phpDate; ?>");
于 2012-06-22T04:50:36.463 に答える
1

date_default_timezone_set('America/Los_Angeles');を使用してみてください。

PHP スクリプトの最初の行。

php.net/manual/en/function.date-default-timezone-set.php

于 2012-06-22T04:50:43.063 に答える