質問編集履歴
5
追記
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
共通クラス内で抽象メソッドが呼ばれてしまっている場合の条件を追加について
|
body
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
特定条件で画面表示データにサーバーサイドで別のデータを入れたいのですが、今現在
|
2
2
|
全Controllerの継承元になっている基底クラスで
|
3
3
|
$tampering->tampering($response);
|
4
|
-
上記のように呼ばれており、継承元で改竄の判定をし
|
4
|
+
上記と下記のように抽象メソッドが呼ばれており、継承元で改竄の判定処理をし、継承した子クラスで画面毎の特定項目のデータ改竄を行うようになっています。
|
5
5
|
新規に今までと別の条件判定を追加して同一画面の別の要素に対してデータの改竄を行う用にしたいのですがどのようにするのがよいのでしょうか?
|
6
|
-
最初はfunction other_tampering(){}と別の処理を作成してしまおうと思っていたのですが空処理を作りたく無いのとabstract
|
6
|
+
最初はfunction other_tampering(){}と別の処理を作成してしまおうと思っていたのですが空処理を作りたく無いのとabstractメソッドが複数指定できないためよい方法を探しています。
|
7
7
|
書いたコード
|
8
8
|
```
|
9
9
|
abstract class Tampering_Abstract {
|
4
内容修正
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
継承元で条件判定をしていた場合
|
1
|
+
継承元で条件判定をしていた場合に条件を追加するには
|
body
CHANGED
File without changes
|
3
差異がある点の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -30,40 +30,8 @@
|
|
30
30
|
return Utils::count()->is_tampering_info();
|
31
31
|
}
|
32
32
|
/**
|
33
|
-
* 改竄特定条件で画面表示データにサーバーサイドで別のデータを入れたいのですが、今現在
|
34
|
-
全Controllerの継承元になっている基底クラスで
|
35
|
-
$tampering->tampering($response);
|
36
|
-
上記のように呼ばれており、対象画面毎にTampering_Abstractを継承して特定項目のデータ改竄を行うようになっています。
|
37
|
-
新規にtampering()に今までと別の条件判定を追加して同一画面の別の要素に対してデータの改竄を行う用にしたいのですがどのようにするのがよいのでしょうか?
|
38
|
-
最初はfunction other_tampering()と別の処理を作成してしまおうと思っていたのですがabstractクラスが複数指定できないためよい方法を探しています。
|
39
|
-
書いたコード
|
40
|
-
```
|
41
|
-
abstract class Tampering_Abstract {
|
42
|
-
private $__response = null;
|
43
|
-
public function set($response = array()) {
|
44
|
-
$this->__response = $response;
|
45
|
-
}
|
46
|
-
protected function get_response() {
|
47
|
-
return $this->__response;
|
48
|
-
}
|
49
|
-
/**
|
50
33
|
* 改竄
|
51
34
|
*/
|
52
|
-
public function tampering() {
|
53
|
-
if (!$this->is_tampering()) {
|
54
|
-
return $this->__response;
|
55
|
-
}
|
56
|
-
return $this->_tampering();
|
57
|
-
}
|
58
|
-
/**
|
59
|
-
* @return bool
|
60
|
-
*/
|
61
|
-
public function is_tampering() {
|
62
|
-
return Utils::count()->is_tampering_info();
|
63
|
-
}
|
64
|
-
/**
|
65
|
-
* 改竄
|
66
|
-
*/
|
67
35
|
abstract protected function _tampering();
|
68
36
|
}
|
69
37
|
|
@@ -82,24 +50,4 @@
|
|
82
50
|
}
|
83
51
|
}
|
84
52
|
}
|
85
|
-
```
|
86
|
-
*/
|
87
|
-
abstract protected function _tampering();
|
88
|
-
}
|
89
|
-
|
90
|
-
class Filter_Tampering_BookSearch extends Tampering_Abstract {
|
91
|
-
/**
|
92
|
-
* 改竄処理
|
93
|
-
*/
|
94
|
-
protected function _tampering() {
|
95
|
-
$response = $this->get_response();
|
96
|
-
$this->data_tampering($response['book_data']);
|
97
|
-
return $response;
|
98
|
-
}
|
99
|
-
private function data_tampering(&$book_data) {
|
100
|
-
foreach ($book_data as &$key) {
|
101
|
-
$key['title'] = '---';
|
102
|
-
}
|
103
|
-
}
|
104
|
-
}
|
105
53
|
```
|
2
補記
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
継承元で条件判定をしていた場合の判定条件を追加するには
|
body
CHANGED
@@ -1,6 +1,38 @@
|
|
1
1
|
特定条件で画面表示データにサーバーサイドで別のデータを入れたいのですが、今現在
|
2
2
|
全Controllerの継承元になっている基底クラスで
|
3
3
|
$tampering->tampering($response);
|
4
|
+
上記のように呼ばれており、継承元で改竄の判定をして継承した対象画面毎に特定項目のデータ改竄を行うようになっています。
|
5
|
+
新規に今までと別の条件判定を追加して同一画面の別の要素に対してデータの改竄を行う用にしたいのですがどのようにするのがよいのでしょうか?
|
6
|
+
最初はfunction other_tampering(){}と別の処理を作成してしまおうと思っていたのですが空処理を作りたく無いのとabstractクラスが複数指定できないためよい方法を探しています。
|
7
|
+
書いたコード
|
8
|
+
```
|
9
|
+
abstract class Tampering_Abstract {
|
10
|
+
private $__response = null;
|
11
|
+
public function set($response = array()) {
|
12
|
+
$this->__response = $response;
|
13
|
+
}
|
14
|
+
protected function get_response() {
|
15
|
+
return $this->__response;
|
16
|
+
}
|
17
|
+
/**
|
18
|
+
* 改竄
|
19
|
+
*/
|
20
|
+
public function tampering() {
|
21
|
+
if (!$this->is_tampering()) {
|
22
|
+
return $this->__response;
|
23
|
+
}
|
24
|
+
return $this->_tampering();
|
25
|
+
}
|
26
|
+
/**
|
27
|
+
* @return bool
|
28
|
+
*/
|
29
|
+
public function is_tampering() {
|
30
|
+
return Utils::count()->is_tampering_info();
|
31
|
+
}
|
32
|
+
/**
|
33
|
+
* 改竄特定条件で画面表示データにサーバーサイドで別のデータを入れたいのですが、今現在
|
34
|
+
全Controllerの継承元になっている基底クラスで
|
35
|
+
$tampering->tampering($response);
|
4
36
|
上記のように呼ばれており、対象画面毎にTampering_Abstractを継承して特定項目のデータ改竄を行うようになっています。
|
5
37
|
新規にtampering()に今までと別の条件判定を追加して同一画面の別の要素に対してデータの改竄を行う用にしたいのですがどのようにするのがよいのでしょうか?
|
6
38
|
最初はfunction other_tampering()と別の処理を作成してしまおうと思っていたのですがabstractクラスが複数指定できないためよい方法を探しています。
|
@@ -50,4 +82,24 @@
|
|
50
82
|
}
|
51
83
|
}
|
52
84
|
}
|
85
|
+
```
|
86
|
+
*/
|
87
|
+
abstract protected function _tampering();
|
88
|
+
}
|
89
|
+
|
90
|
+
class Filter_Tampering_BookSearch extends Tampering_Abstract {
|
91
|
+
/**
|
92
|
+
* 改竄処理
|
93
|
+
*/
|
94
|
+
protected function _tampering() {
|
95
|
+
$response = $this->get_response();
|
96
|
+
$this->data_tampering($response['book_data']);
|
97
|
+
return $response;
|
98
|
+
}
|
99
|
+
private function data_tampering(&$book_data) {
|
100
|
+
foreach ($book_data as &$key) {
|
101
|
+
$key['title'] = '---';
|
102
|
+
}
|
103
|
+
}
|
104
|
+
}
|
53
105
|
```
|
1
細く追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
特定条件で画面表示データにサーバーサイドで別のデータを入れたいのですが、今現在
|
2
|
-
全Controllerの継承元になっている基底クラスで
|
2
|
+
全Controllerの継承元になっている基底クラスで
|
3
3
|
$tampering->tampering($response);
|
4
|
-
上記のように呼ばれており、対象画面毎にTampering_Abstractを継承して特定項目のデータ改竄を行うようになってい
|
4
|
+
上記のように呼ばれており、対象画面毎にTampering_Abstractを継承して特定項目のデータ改竄を行うようになっています。
|
5
5
|
新規にtampering()に今までと別の条件判定を追加して同一画面の別の要素に対してデータの改竄を行う用にしたいのですがどのようにするのがよいのでしょうか?
|
6
6
|
最初はfunction other_tampering()と別の処理を作成してしまおうと思っていたのですがabstractクラスが複数指定できないためよい方法を探しています。
|
7
7
|
書いたコード
|