So beheben Sie PHP 7.2 Warnung: count(): Parameter muss ein Array oder ein Objekt sein, das Countable in der error.php implementiert?


woohu1

Mein Skript ist-

<?php  if (count($errors) > 0) : ?>
  <div class="error">
        <?php foreach ($errors as $error) : ?>
          <p><?php echo $error ?></p>
        <?php endforeach ?>
  </div>
<?php  endif ?>

Der Fehler, den ich bekomme, ist Warning: count(): Parameter must be an array or an object that implements Countable.

Ich verwende PHP 7.2auf Apache2.

Harish ST

Da der Fehler sagt Parameter must be an array or an object that implements Countable, der $errorssollte ein Array sein.

In Ihrem Fall könnte es leer sein. Daher count()sollten Sie vor der Verwendung immer überprüfen, ob es eine Countable-Schnittstelle implementiert.

Ich gehe davon aus, dass Sie versuchen, eine zu iterieren, Arrayund dafür überprüfe ich zuerst, ob $errorses sich um ein Array mit 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 ?>

Möglicherweise müssen Sie sich auch den folgenden is_countable()Link ansehen :

Offizielle PHP-Dokumentation:

PHP-Anzahl()

PHP is_countable()

PHP is_array()

Verwandte Artikel