質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

date

dateは、date型や日付に関する関数や処理についてのタグです

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

4回答

5426閲覧

php date_default_timezone_set が効かないです。

JJ878

総合スコア21

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

date

dateは、date型や日付に関する関数や処理についてのタグです

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/03/28 03:40

編集2017/03/28 06:33

別の環境では問題だいですが、不思議なことがあり質問しました。
ぜひ、教えていただけますでしょうか?

例えばdate_default_timezone_set("UTC")に設定した直後に
var_dump(date('Y-m-d H:i:s'));で取得しても日本日付が出力されます。
試したソースは以下になります。

<?php var_dump("time.zone"); var_dump(ini_get("date.timezone")); var_dump("date_default_timezone_get"); var_dump(date_default_timezone_get()); var_dump("現在時間取得"); var_dump(date('Y-m-d H:i:s')); // 日本の日付がです var_dump(date('Y-m-d H:i:s'),time()); date_default_timezone_set( 'UTC' ); var_dump("UTCに強制設定"); var_dump(date_default_timezone_get()); var_dump(date('Y-m-d H:i:s')); var_dump(date('Y-m-d H:i:s'),time()); var_dump("Asia/Tokyoに強制設定"); date_default_timezone_set( 'Asia/Tokyo' ); var_dump(date_default_timezone_get()); var_dump(date('Y-m-d H:i:s')); var_dump(date('Y-m-d H:i:s'),time());

上記のソースコード実行結果のエビデンスを添付させていただきます。

よろしくお願いいたします。
イメージ説明

###追記!!!!!!
php versionを5.4->5.6に変更した後
timezoneをAsia/Tokyoに変更しても解決できませんでした。
OSはEC2 Centos7です。

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2017/03/28 04:50

質問文のコードはコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
JJ878

2017/03/28 05:30

ご指摘ありがとうございます。修正いたしました。
guest

回答4

0

3v4lに流してみましたが、きちんとJST、UTC、現地時間(アムステルダム)を返しました。

コンピューター内部のタイムゾーンデータベースが不足しているとか、そっちの方面の問題かもしれません。

投稿2017/03/28 04:29

maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

JJ878

2017/03/28 05:33

ありがとうございます、現在OSのタイムゾンをしらべております。 centos7ですが、、、
guest

0

自己解決

下記の質問と関連がありますが
https://teratail.com/questions/70505

そもそも centos7のtimezoneデータが壊れてたみたたいでtimezone database をupdateしました。

yum update tzdata

投稿2017/03/29 01:25

JJ878

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

一番下のtimezoneがUTC+900だからUTCに直しても+されるので結局日本時間とか?

投稿2017/03/28 05:20

toutou

総合スコア2050

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

JJ878

2017/03/28 05:31

なるほど、それ変更するどうやって変更するんですか?
guest

0

CentOS7 を VirtualBox 上で動作させてみたところ(ISO イメージからインストールしてアップデートした直後の状態)、特におかしくはないような…

bash

1$ timedatectl 2 Local time: 火 2017-03-28 14:54:16 JST 3 Universal time: 火 2017-03-28 05:54:16 UTC 4 RTC time: 火 2017-03-28 05:54:17 5 Time zone: Asia/Tokyo (JST, +0900) 6 NTP enabled: yes 7NTP synchronized: yes 8 RTC in local TZ: no 9 DST active: n/a 10 11$ php test.php 12string(9) "time.zone" 13string(0) "" 14string(25) "date_default_timezone_get" 15string(3) "UTC" 16string(18) "現在時間取得" 17string(19) "2017-03-28 05:54:59" 18string(19) "2017-03-28 05:54:59" 19int(1490680499) 20string(18) "UTCに強制設定" 21string(3) "UTC" 22string(19) "2017-03-28 05:54:59" 23string(19) "2017-03-28 05:54:59" 24int(1490680499) 25string(25) "Asia/Tokyoに強制設定" 26string(10) "Asia/Tokyo" 27string(19) "2017-03-28 14:54:59" 28string(19) "2017-03-28 14:54:59" 29int(1490680499)

最初の timedatectl の結果が、普通に Asia/Tokyo になっているのが違うくらいですかね。

投稿2017/03/28 06:11

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

JJ878

2017/03/28 06:21

失礼ですが、php versionはなんですか? 私は 5.4です。
tacsheaven

2017/03/28 06:49

あ、PHP7 を試しに入れてたんだった… 7.0.14 ですね。タイムゾーンは OS インストール時に設定しています。 別の環境(CentOS6, PHP 5.3.3)でも試しましたがおかしくないですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問