teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

バージョン表記を追加

2019/08/09 03:43

投稿

aaiau
aaiau

スコア11

title CHANGED
File without changes
body CHANGED
@@ -17,4 +17,7 @@
17
17
  公式のマニュアルを見てもvar_dumpを使った場合でも、date関数の返り値はstringであると記載されているので、date('H')の返り値に+1を加算しても何ら変わらないと思うのですが、内部的にdate型的な扱いをしているのでしょうか?
18
18
 
19
19
  上記の処理に関しては社内業務用に適当に作ったものなので、『この処理だと24時に+1したら…なのでこの方が…』というアドバイスが欲しいのではなく、単純にこの挙動が気になったので、知っている方いましたら、解説いただけるとありがたいです。
20
- よろしくお願いします。
20
+ よろしくお願いします。
21
+
22
+ 追記
23
+ すみません。バージョンについて記載していませんでしたが、PHP 5.3.3です。

1

読みにくいので修正

2019/08/09 03:43

投稿

aaiau
aaiau

スコア11

title CHANGED
@@ -1,1 +1,1 @@
1
- date関数の返り値がおかしい。データ型問題なのか
1
+ date関数の返り値の型がおかしい。なぜこよう挙動になるのか
body CHANGED
@@ -1,5 +1,4 @@
1
- 実装の中で現在の時間に1時間を加算した日時を文字列で受け取る(時刻が12時なら'2019/08/09 13:00:00'といった具合)処理を
1
+ 実装の中で現在の時間に1時間を加算した日時を文字列で受け取る(時刻が12時なら'2019/08/09 13:00:00'といった具合)処理を作成していたのですが、以下のように実装したところ、想定していない値が返ってきました。
2
- 作成していたのですが、以下のように実装したところ、想定していない値が返ってきました。
3
2
  ```php
4
3
  // 2019/08/09 02:10に実行した場合、'2019/08/09 03:00:00'という値が返ってくることを期待している
5
4
  $date = date('Y/m/d ') . date('H') +1 . ':00:00';
@@ -15,10 +14,7 @@
15
14
  var_dump( $num ); // 結果は int(3) となる
16
15
 
17
16
  ```
18
- 公式のマニュアルを見てもvar_dumpを使った場合でも、date関数の返り値はstringであると記載されているので、
17
+ 公式のマニュアルを見てもvar_dumpを使った場合でも、date関数の返り値はstringであると記載されているので、date('H')の返り値に+1を加算しても何ら変わらないと思うのですが、内部的にdate型的な扱いをしているのでしょうか?
19
- date('H')の返り値に+1を加算しても何ら変わらないと思うのですが、
20
- 内部的にdate型的な扱いをしているのでしょうか?
21
18
 
22
- 上記の処理に関しては社内業務用に適当に作ったものなので、『この処理だと24時に+1したら…なのでこの方が…』というアドバイスが
19
+ 上記の処理に関しては社内業務用に適当に作ったものなので、『この処理だと24時に+1したら…なのでこの方が…』というアドバイスが欲しいのではなく、単純にこの挙動が気になったので、知っている方いましたら、解説いただけるとありがたいです。
23
- 欲しいのではなく、単純にこの挙動が気になったので、知っている方いましたら、解説いただけるとありがたいです。
24
20
  よろしくお願いします。