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

回答編集履歴

1

修正

2020/05/22 02:45

投稿

退会済みユーザー
answer CHANGED
@@ -6,23 +6,23 @@
6
6
  return 1*0*08
7
7
  ```
8
8
  が最初に引っかかってます。
9
+ 0 を頭に付ける表記は 8進数を表します。
9
10
 
11
+ 5 系では、8進数として正しくない表現は無視(?)されていましたが、
10
- 0 を頭に付ける表記 8進数を表す。
12
+ 7 系で8進数て正しくない表現はエラーとることになりました
13
+
11
14
  計算としても、8進数で計算されています。
12
15
 
13
16
  ```php
14
17
  echo 1 * 017;
15
18
  //15
16
19
  ```
20
+ もともと正しく動いていなかったコードが、正しく(?)エラーを吐くようになっただけです。
17
21
 
18
- 5 系では、8進数として正しくない表現は無視(?)されていましたが、
19
- 7 系では、8進数として正しくない表現はエラーとすることになりました。
20
-
21
22
  マニュアルの該当箇所は以下です。
22
23
  [構文-整数 php.net](https://www.php.net/manual/ja/language.types.integer.php#language.types.integer.syntax)
23
24
  [Invalid octal literals](https://www.php.net/manual/ja/migration70.incompatible.php#migration70.incompatible.integers.invalid-octals)
24
25
 
25
- もともと正しく動いていなかったコードが、正しく(?)エラーを吐くようになっただけです。
26
26
 
27
27
  正常に動かすには、すでに検討しているように
28
28
  ・文字列から、頭に 0 のついた数字を 0 なしのものに置換