/*
*@content 代码优化小结
* @auditor Major General
*@time 2016-07-19
*/
代码的质量是吃这碗饭能吃多久很重要的因素,随便说几点
1,function p(){
$args=func_get_args(); //获取多个参数
echo '<div style=”width:100%;text-align:left”><pre>';
foreach($args as $arg){
if(is_array($arg)){
print_r($arg);
echo '<br>';
}else if(is_string($arg)){
echo $arg.'<br>';
}else{
var_dump($arg);
echo '<br>';
}
}
echo '</pre></div>';
}
上述函数可以打印任何数据类型!
2,关于日期时间的业务最近层出不穷,稍微总结了一下,对日期用法主要是date以及strtotime函数,切记活学活用,大胆尝试
$m = date('Y-m');
$endtime = strtotime("+4 month",strtotime($m."-01 00:00:00")-1);
$time_arr = array();
for($i=0;$i<=12-$time;$i++){
$time_arr[] = date("Y-m", strtotime("+" . $i . " month"));
}
3,关于sql优化,添加索引,值查需要的字段,不要讲sql写入循环,sql连表不要超过三张,出现多条件搜索或者判断时,拼接sql语句,随便写点示例
$sql = 'SELECT a.short_name,a.remark,d.id,d.is_sp,t.name as theater_name,d.start_time,d.show_date,d.show_time,r.region_name FROM
show_drama AS d,regions AS r,theater_info as t,drama_abb as a
WHERE t.id = d.theater_id AND a.id = d.abb_id AND r.region_id = d.city_id;
if(!empty($post['company_id'])){
if(!empty($post['group_id'])){
$sql .= ' AND d.company_id = '.$post['company_id'].' AND group_id = '.$post['group_id'];
}else{
$sql .= ' AND d.company_id = '.$post['company_id'];
}
}
4,关于模板中使用数组时,只需要在php中提前定义,便无需使用错误抑制。
5,程序开始时设置set_time_limit(0);程序永久执行避免超时,设置error_repotting(),返回当前的错误以及级别,可以准确定位BUG位置。
6,框架对于原生基础略差的童鞋,请打好基础再去使用!!!
还记得古天乐版中杨过断臂欲取独孤求败之剑: 第一把剑:青锋宝锋,寒光闪闪,无坚不摧,弱冠以前以之与“河溯群雄争锋”。
第二把剑:蝴蝶软剑,三十岁前所用。
第三把剑:玄铁重剑,剑重无锋,剑尖是半圆形,四十岁以前仗剑纵横天下。
第四把剑:木剑,领悟剑术真谛,竹术沙石,皆可为剑,是以无招胜有招。
最复杂的算法也是if与for的组合,只要掌握了基础,循序渐进,终会有成功的一天,努力到无能为力,拼搏到感动自己!
奋斗吧,骚年!