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

回答編集履歴

1

追記

2018/05/15 11:22

投稿

退会済みユーザー
answer CHANGED
@@ -14,4 +14,18 @@
14
14
  <?php
15
15
  $val = 3486784400;
16
16
  echo gettype($val) . "\n"; // ← 結果 double ウェウェウェ
17
+ ```
18
+
19
+ ####追記
20
+
21
+ % (moduler) は左辺がINTEGERでないとダメなので double になった 3486784400 を int に暗黙キャストするんだけど、オーバーフローして値がマイナスになるんだろうな。
22
+
23
+ 一方、商については double をそのまま割って型は double のまま。
24
+
25
+ ```PHP
26
+ <?php
27
+ $val = 3486784400;
28
+ echo gettype($val) . "\n";   // ← double
29
+ echo gettype($val % 7) . "\n"; // ← integer
30
+ echo gettype($val / 7) . "\n"; // ← double
17
31
  ```