Как говорится в ошибке, Parameter must be an array or an object that implements Countable
, $errors
должен быть массивом.
В вашем случае он может быть пустым. Поэтому перед использованием count()
вы всегда должны проверять, что он реализует интерфейс Countable.
Я предполагаю, что вы пытаетесь выполнить итерацию Array
, и для этого я сначала проверяю, что $errors
- это массив, используя is_array()
.
<?php if (is_array($errors) && count($errors) ) : ?>
<div class="error">
<?php foreach ($errors as $error) : ?>
<p><?php echo $error ?></p>
<?php endforeach ?>
</div>
<?php endif ?>
Вам также может понадобиться посмотреть is_countable()
, ссылка ниже:
PHP Официальная документация:
PHP count ( )
PHP is_countable ()
PHP is_array ()