统计不同邮箱类型数量

效果图:

控制器:

     //查询邮箱
     public function actionEmail()
     {
         /* //查询所有邮箱数据(1种)
         $arr=Users::find("select * from users")->asArray()->all();
         //var_dump($data);die;
         $data=array();
         //取出邮箱类型
         foreach($arr as $key=>$v)
         {
              $str=substr($v['email'],strpos($v['email'],"@"),50);
              $str1=substr($str,1);
              $data[$str1][$key]=$str1;
         }
         //var_dump($data);die;
        //获得不同类型邮箱个数
        foreach($data as $key=>$v)
        {
           echo $key."的邮箱有".count($v)."个"."<br>";
        }*/

      (2种方法)
        $arr=Users::find()->select("email")->column();
        $data=array();
        foreach($arr as $key=>$v)
        {
             $pos=strpos($v,"@");
             $str=substr($v,$pos+1);
             $data[]=$str;
        }
        //var_dump($data);die;
        $count=array_count_values($data);
       // var_dump($count);die;
         foreach($count as $key=>$v)
        {
           echo $key."的邮箱有".$v."个"."<br>";
        }
     }

原文地址:https://www.cnblogs.com/shaohuixia/p/5403666.html