php问题来帮忙
迷茫
迷茫 2017-04-11 08:57:52
[PHP讨论组]

$a=array (

   '14' => array ( 'ok' => 1 ,'err' => 1 ), 
   '15' => array ( 'ok' => 1 ,'err' => 0 ), 
   );

function ok_err_errate($errrate,$a){

   $arr_id=array(); 
   foreach ($a as $k=>$values) {
           foreach ($values as $data1) {
               if($data1['err']/($data1['ok']+$data1['err'])*100>=$errrate){
              $arr_id[]=$k;
          }
           }

   }
    return $arr_id;
}
$b =ok_err_errate(50,$a);
print_r($b);
exit;

为什么输出的是空数组?请帮忙改改
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(3)
PHPz

$data1['err']/($data1['ok']+$data1['err'])*100你算算是多少
然后针对谁先谁后,加个括号吧
($data1['err']/($data1['ok']+$data1['err']))*100
$data1['err']/(($data1['ok']+$data1['err'])*100)
两个选一个

黄舟

if条件不满足

怪我咯

你多了一层 foreach 循环

   foreach ($a as $k=>$data1)
    {       
               if($data1['err']/($data1['ok']+$data1['err'])*100>=$errrate)
               {
                      $arr_id[]=$k;
               }
   }
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号