バージョン選択

フォーラム

メニュー

オンライン状況

20 人のユーザが現在オンラインです。 (7 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 19
louis58469 もっと...

サイト内検索

プラグイン > 開発について > 時刻データが9時間ずれて出力される

開発について

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2019/11/12 18:00
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1308
時刻データが9時間ずれて出力される
EC-CUBE 4.0.2
PHP 7.1.32
MySQL 5.7.27

データベースの各テーブルの値を出力してCSVファイルを作成する機能を開発しています。

汎用性を持たせるために Doctorine を使用せず、次のように SQL文を動的に組み立てて出力しています。

$sql = 'SELECT xxx FROM xxx';
$stmt = $conn->query($sql);
$result = $stmt->fetchAll();


出力自体は問題なくできるのですが、時刻が9時間ずれて出力されてしまいます。
EC-CUBE の仕様として DB には DateTime は UTC で保存されるため、ずれてしまうことは仕方ないことと思います。
ただ、出力したデータは分析するために使用するため、時刻を日本時間に変換して出力したいです。
可能でしょうか?

次のことを試してみましたが効果はありませんでした。

$sql = "set time_zone = '+09:00';";
$conn->query($sql);


date_default_timezone_set('UTC');

nanasess
投稿日時: 2019/11/14 11:23
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2280
Re: 時刻データが9時間ずれて出力される
実際に試せてないのですが、 Doctrine DBAL が返してくる日付型のレコードは PHP の DateTime 形式でしょうか? 文字列でしょうか?
PHP の DateTime 形式でしたら、 SQL でタイムゾーンを設定できなくても、 PHP プログラムの中で設定できると思います
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン



統計情報

総メンバー数は79,083名です
総投稿数は106,427件です

投稿数ランキング

1
seasoft
7334
2
468
3217
3
AMUAMU
2712
4
nanasess
2280
5
umebius
2085
6
yuh
1763
7
red
1558
8
h_tanaka
1308
9
tsuji
957
10
fukap
907
11
shutta
835
12
tao_s
794
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20
mcontact
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.