回答編集履歴
4
プログラムの修正
answer
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
$orange = $apple === true? 1:0;
|
8
8
|
$token = "f".$apple.$banana.$orange;
|
9
9
|
|
10
|
-
|
10
|
+
//メソッドはクラスで管理。別ファイルの方が後々管理はしやすい
|
11
11
|
class Func
|
12
12
|
{
|
13
13
|
public $apple;
|
@@ -15,10 +15,11 @@
|
|
15
15
|
public $orange
|
16
16
|
public function __construct($apple,$banana,$orange){
|
17
17
|
}
|
18
|
-
public function
|
18
|
+
public function func111(){
|
19
19
|
}
|
20
|
-
public function
|
20
|
+
public function func100(){
|
21
21
|
}
|
22
|
+
public function func010
|
22
23
|
…
|
23
24
|
public function other_case(){
|
24
25
|
}
|
@@ -26,7 +27,8 @@
|
|
26
27
|
|
27
28
|
$Func = new Func($apple,$banana,$orange);
|
28
29
|
switch($Func){
|
30
|
+
//採用されたパターン
|
29
|
-
case "f000": $Func ->
|
31
|
+
case "f000": $Func -> func111();
|
30
32
|
break;
|
31
33
|
case "f100": $Func -> func100();
|
32
34
|
break;
|
3
指摘通り修正しました
answer
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
```PHP
|
4
4
|
//true or falseでトークンを作る
|
5
|
-
$apple = $apple == true?
|
5
|
+
$apple = $apple === true? 1:0;
|
6
|
-
$banana = $apple == true?
|
6
|
+
$banana = $apple === true? 1:0;
|
7
|
-
$orange = $apple == true?
|
7
|
+
$orange = $apple === true? 1:0;
|
8
8
|
$token = "f".$apple.$banana.$orange;
|
9
9
|
|
10
10
|
|
@@ -41,4 +41,5 @@
|
|
41
41
|
|
42
42
|
あとはそのトークンを目印にして`switch`で必要に応じてパターンを増やしていけばいいと思います。こうすればパターン外でも処理できます。
|
43
43
|
|
44
|
-
また関数はクラスで管理しておくと後々困りません。
|
44
|
+
また関数はクラスで管理しておくと後々困りませんし、別ファイルで管理しておくといいでしょう。
|
45
|
+
switchを使ったのは分岐の時点でどのパターンが採用されているか明白にしているためです。
|
2
function 抜け
answer
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
public $apple;
|
14
14
|
public $banana;
|
15
15
|
public $orange
|
16
|
-
public __construct($apple,$banana,$orange){
|
16
|
+
public function __construct($apple,$banana,$orange){
|
17
17
|
}
|
18
18
|
public function f000(){
|
19
19
|
}
|
1
defaultの間違い
answer
CHANGED
@@ -33,7 +33,7 @@
|
|
33
33
|
case "f010": $Func -> func010();
|
34
34
|
break;
|
35
35
|
//パターン外
|
36
|
-
|
36
|
+
default: $Func -> other_case();
|
37
37
|
break;
|
38
38
|
}
|
39
39
|
|