Fix undefined variables in Validator class

This commit is contained in:
Kijin Sung 2021-01-28 23:26:33 +09:00
parent e1f1de8e49
commit bfd0c66269

View file

@ -131,6 +131,9 @@ class Validator
return FALSE; return FALSE;
} }
$rules = array();
$messages = array();
// custom rules // custom rules
if(isset($xml->ruleset->customrules) && isset($xml->ruleset->customrules->rule)) if(isset($xml->ruleset->customrules) && isset($xml->ruleset->customrules->rule))
{ {
@ -140,8 +143,6 @@ class Validator
$customrules = array($customrules); $customrules = array($customrules);
} }
$rules = array();
$messages = array();
foreach($customrules as $rule) foreach($customrules as $rule)
{ {
if(!isset($rule->attrs) || !isset($rule->attrs->name)) if(!isset($rule->attrs) || !isset($rule->attrs->name))
@ -370,7 +371,7 @@ class Validator
} }
// attr : required // attr : required
if($filter['required'] === 'true' && !$value_len) if(isset($filter['required']) && $filter['required'] === 'true' && !$value_len)
{ {
return $this->error($key, 'isnull'); return $this->error($key, 'isnull');
} }
@ -382,7 +383,7 @@ class Validator
} }
// attr : length // attr : length
if($length = $filter['length']) if($length = $filter['length'] ?? '')
{ {
list($min, $max) = explode(':', trim($length)); list($min, $max) = explode(':', trim($length));
$is_min_b = (substr($min, -1) === 'b'); $is_min_b = (substr($min, -1) === 'b');
@ -402,7 +403,7 @@ class Validator
} }
// equalto // equalto
if($equalto = $filter['equalto']) if($equalto = $filter['equalto'] ?? '')
{ {
if(!array_key_exists($equalto, $fields) || trim($fields[$equalto]) !== $value) if(!array_key_exists($equalto, $fields) || trim($fields[$equalto]) !== $value)
{ {
@ -411,7 +412,7 @@ class Validator
} }
// rules // rules
if($rules = $filter['rule']) if($rules = $filter['rule'] ?? '')
{ {
$rules = explode(',', $rules); $rules = explode(',', $rules);
foreach($rules as $rule) foreach($rules as $rule)
@ -763,23 +764,23 @@ class Validator
$messages[] = "v.cast('ADD_MESSAGE',['{$name}','{$field_lang}']);"; $messages[] = "v.cast('ADD_MESSAGE',['{$name}','{$field_lang}']);";
} }
if($filter['required'] == 'true') if(isset($filter['required']) && $filter['required'] == 'true')
{ {
$field[] = 'required:true'; $field[] = 'required:true';
} }
if($filter['rule']) if(isset($filter['rule']) && $filter['rule'])
{ {
$field[] = "rule:'" . strtolower($filter['rule']) . "'"; $field[] = "rule:'" . strtolower($filter['rule']) . "'";
} }
if($filter['default']) if(isset($filter['default']) && $filter['default'])
{ {
$field[] = "default:'{$filter['default']}'"; $field[] = "default:'{$filter['default']}'";
} }
if($filter['modifier']) if(isset($filter['modifier']) && $filter['modifier'])
{ {
$field[] = "modifier:'{$filter['modifier']}'"; $field[] = "modifier:'{$filter['modifier']}'";
} }
if($filter['length']) if(isset($filter['length']) && $filter['length'])
{ {
list($min, $max) = explode(':', $filter['length']); list($min, $max) = explode(':', $filter['length']);
if($min) if($min)
@ -791,7 +792,7 @@ class Validator
$field[] = "maxlength:'{$max}'"; $field[] = "maxlength:'{$max}'";
} }
} }
if($filter['if']) if(isset($filter['if']) && $filter['if'])
{ {
$ifs = array(); $ifs = array();
if(!isset($filter['if'][0])) if(!isset($filter['if'][0]))