Skip to content

Commit a127f9c

Browse files
Update Validator.php
1 parent afeb358 commit a127f9c

1 file changed

Lines changed: 29 additions & 1 deletion

File tree

src/Validator.php

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class Validator {
3838
*
3939
* @var array
4040
*/
41-
private $default_message;
41+
private $default_messages;
4242

4343
/**
4444
* Store predefined rules
@@ -47,6 +47,21 @@ class Validator {
4747
*/
4848
private $predefined_rules;
4949

50+
/**
51+
* Store valid data
52+
*
53+
* @var array
54+
*/
55+
private $valid_data;
56+
57+
/**
58+
* Store invalid data
59+
*
60+
* @var array
61+
*/
62+
private $invalid_data;
63+
64+
5065
function __construct() {
5166
//Predefined data validation rules
5267
$this->predefined_rules = [
@@ -95,6 +110,8 @@ function __construct() {
95110
public function validate($data, $multiple_data=false) : bool {
96111
$is_valid = true;
97112
$this->errors = [];
113+
$this->valid_data = [];
114+
$this->invalid_data = [];
98115

99116
//Convert users data type to array
100117
if(is_object($data)) {
@@ -108,6 +125,7 @@ public function validate($data, $multiple_data=false) : bool {
108125

109126
//Validate users data
110127
foreach($this->rules as $data_key => $rules) {
128+
$is_valid_data = true;
111129
if(is_array($rules)) {
112130
foreach($rules as $rule => $value) {
113131
$rule = strtolower($rule);
@@ -137,12 +155,14 @@ public function validate($data, $multiple_data=false) : bool {
137155
//Validate data
138156
if($this->$func($tmp_single_data, $tmp_data_key, $rules, $data_key) === false) {
139157
$is_valid = false;
158+
$is_valid_data = false;
140159
break;
141160
}
142161
} else {
143162
//Validate data
144163
if($this->$func($single_data, $data_key, $rules) === false) {
145164
$is_valid = false;
165+
$is_valid_data = false;
146166
break;
147167
}
148168
}
@@ -171,12 +191,14 @@ public function validate($data, $multiple_data=false) : bool {
171191
//Validate data
172192
if($this->$func($tmp_data, $tmp_data_key, $rules, $data_key) === false) {
173193
$is_valid = false;
194+
$is_valid_data = false;
174195
break;
175196
}
176197
} else {
177198
//Validate data
178199
if($this->$func($data, $data_key, $rules) === false) {
179200
$is_valid = false;
201+
$is_valid_data = false;
180202
break;
181203
}
182204
}
@@ -186,6 +208,12 @@ public function validate($data, $multiple_data=false) : bool {
186208
return false;
187209
}
188210
}
211+
//Get valid data
212+
if($is_valid_data === true) {
213+
$this->valid_data[$data_key] = $data[$data_key];
214+
} else {
215+
$this->invalid_data[$data_key] = $data[$data_key];
216+
}
189217
} else {
190218
$this->errors['error'] = 'Error : Invalid rules for validation';
191219
return false;

0 commit comments

Comments
 (0)