РНР подсчитанное значение в массиве - PullRequest
3 голосов
/ 28 марта 2012

У меня есть такой код:

<?php if(isset($global_info_results)): ?>
   <?php echo count($global_info_results) ?>
   <span>Mali Oglasi: </span>
   <?php foreach ($global_info_results as $result) : ?>
      <?php if($result->info_type_id == 1) : ?>
         <p><?php echo $result->name?></p>
      <?php endif ?>
   <?php endforeach; ?>
<?php endif ?>

Как подсчитать конкретное значение в массиве (например, я хочу подсчитать, сколько у результата info_type_id == 1).

Ответы [ 2 ]

3 голосов
/ 28 марта 2012
  <?php $a = 0
   foreach ($global_info_results as $result)
    if($result->info_type_id == 1)
      { $a = $a + 1}
     End Foreach?>

  <span>Mali Oglasi: </span>
  <?php foreach ($global_info_results as $result) : ?>
      <?php if($result->info_type_id == 1) : ?>
         <p><?php echo $result->name?></p>
2 голосов
/ 28 марта 2012

Вы можете использовать array_filter , чтобы сгенерировать массив значений, которые соответствуют критериям, которые вы хотите считать, и затем выполнить подсчет результата.Приведенный ниже пример возвращает количество элементов в массиве, значение которых больше 4:

$items = array (1, 2, 3, 4, 5, 6, 7, 8, 9);
$itemsOfInterest = array_filter ($items, function ($elem) {return ((int) $elem > 4);})
echo (count ($itemsOfInterest));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...