Php 按数组的解析值对数组进行计数

Php 按数组的解析值对数组进行计数,php,algorithm,codeigniter,yii,Php,Algorithm,Codeigniter,Yii,如何计算数组中的数组元素 $course = array( array( 'course_name'=> 'HTML', 'trainee'=> array( array('trainee_name'=>'Hong Va'), array('trainee_name

如何计算数组中的数组元素

$course = array(
            array(
                'course_name'=> 'HTML',
                'trainee'=> array(
                                array('trainee_name'=>'Hong Va'),
                                array('trainee_name'=>'Reaksmey SE')
                            )
            ),array(
                'course_name'=> 'Java',
                'trainee'=> array(
                                array('trainee_name'=>'Hong Va'),
                                array('trainee_name'=>'Reaksmey SE'),
                                array('trainee_name'=>'Sok Panha'),
                                array('trainee_name'=>'MAO Vannakpanha')
                            )
              )
);
我想要这样的结果:

HTML 2学员

Java 3学员

HTML

foreach($course as $c){
    echo $c['course_name']."(".count($c['trainee'])." trainees)";
    echo "<br />";
}
爪哇


使用foreach和count即可

  <?php
       $result = array(); // to handle with data later
       foreach($course as $arr) {
          $result[$arr['course_name']] = count($arr['trainee']);        
          // for output here
          echo $arr['course_name'].' ('.count($arr['trainee']).' trainees)<br>';
       }

试试这个-它还将根据受训人数使用正确的复数或单数

foreach ($course as $item)
{
    $count = count($item['trainee']);
    $word = ($count == 1) ? 'trainee' : 'trainees';
    echo $item['course_name'] . " ($count $word)"; 
    echo "<br>";
}

好吧,你想要。太好了!你想从我们这里得到什么?首先你要尝试,然后你会得到帮助。提示1:foreach+count。这基本上就是你需要解决的所有问题。我试过了,但仍然无法解决。@Lazy Developer:如果你不能解决这样一个琐碎的任务,那么你有可能需要从头开始学习php。否则,您将花费更多的时间搜索和等待答案,而不是编码。谢谢您的分享。
  <?php
       $result = array(); // to handle with data later
       foreach($course as $arr) {
          $result[$arr['course_name']] = count($arr['trainee']);        
          // for output here
          echo $arr['course_name'].' ('.count($arr['trainee']).' trainees)<br>';
       }
foreach ($course as $item)
{
    $count = count($item['trainee']);
    $word = ($count == 1) ? 'trainee' : 'trainees';
    echo $item['course_name'] . " ($count $word)"; 
    echo "<br>";
}