代码优化之foreach

昨晚刚好项目上线完,今天有时间来谈谈优化,作为一个程序猿,代码写的不好,那是很不开心的事,
虽然php是一门弱类型的语言:变量该申明还是要申明一下,该isset一下就isset,少用foreach能用函数代替就用函数代替
例如下面代码:
$a=M('','',C('MasterDb'))->table('select * from js_user id=1');

foreach($a as $key=>$val){
$b+=$val['number'];

}
这段代码如果查询数据库为空,下面代码就会报错,虽然程序表面不会出错,但是内在解析会出错的
说说我的写法
$a=M('','',C('MasterDb'))->table('select * from js_user id=1');
$result=0;

if(isset($a) && is_array($a)){
$result=array_reduce($a,function($result,$c){
return $result+$c['number'];

})
}
以上代码没有测试,只是有兴趣的讨论一下
其实还可以看看有兴趣的还可以看看array_filter和array_map个人觉得这两个函数我也是用的超级多

【代码优化之foreach】

    推荐阅读