у меня есть класс ошибок, как это:
class Error{
private static $_errors =[];
public static function getError()
{
return self::$_errors;
}public static function setError($fields, $messages)
{
self::$_errors[$fields] = "$messages ";
}
}
тогда у меня есть другой файл для доступа к этому получателю и установщику, как это:
public function required($fields= array())
{
foreach($fields as $value) {
if (isset($this->_input[$value])) {
if (empty($this->clean($this->_input[$value]))) {
$name = self::changename($value);
$messages = "$name is required.";
error::setError($value, $messages);
}
} else{
$name = self::changename($value);
$messages = "$name not found.";
error::setError($value, $messages);
}
}
}
когда я пытаюсь напечатать сообщения об ошибках, как это:
if (!empty(error::getError())) {
foreach (error::getError() as $error) {
echo "<li>$error</li>";
}
}
я получил «Предупреждение: незаконное смещение строки». какой из моего кода вызывает эту проблему? и как мне это исправить?
ответ прост, я просто использую is_array потому что это кажется моим $fields
содержит массив и если это не так, положить в человека.
foreach($field as $value) {
if (isset($this->_input[$value])) {
if (empty(Security::clean($this->_input[$value]))) {
$messages = "is Required.";
error::inputError($value, $messages);
}
} else{
$messages = "Tidak ditemukan.";
error::inputError($field, $messages);
}
}
Других решений пока нет …