我的剧本是——<?php if (count($errors) > 0) : ?> <div class="error"> <?php foreach ($errors as $error) : ?> <p><?php echo $error ?></p> <?php endforeach ?> </div><?php endif ?>我得到的错误是Warning: count(): Parameter must be an array or an object that implements Countable。我PHP 7.2在 Apache2 上使用。
1 回答
弑天下
TA贡献1818条经验 获得超8个赞
正如错误所说,Parameter must be an array or an object that implements Countable,$errors应该是一个数组。
在您的情况下,它可能是空的。所以在使用之前count()你应该总是检查它实现了一个 Countable 接口。
我假设您正在尝试迭代 anArray并且为此我首先$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 计数()
PHP is_countable()
PHP is_array()
- 1 回答
- 0 关注
- 148 浏览
添加回答
举报
0/150
提交
取消