10条php编程小技巧


Posted in PHP onJuly 07, 2015

1、写程序的时候会用到这种情况,比如对一个数字进行四舍五入取整。很多人会这样写:

input a

if a - int(a) >= 0.5 then

a =  a +1

end if

其实这个判断语句可以使用一个很简单的表达式来写
a =  fix(a + sgn(a) *0.5)

用php写作:
$a =  intval($a +  0.5 *  ($a >0 ? 1 : -1)  );

分析:

假设 a为 4.4 那么 a+0.5 = 4.9 intval()以后为4 ,假设a为4.6 a+0.5=5.1 那么intval()以后则为5,因此实现了四舍五入。
正数+0.5 , 负数则-0.5。

如果说四舍五入保留2位小数也同理。

$a = intval(a * 100 + 0.5 * ($a >0 ? 1 : -1) ) /100。

2、 求如果a-b的值,如果小于0则取0,可以写城
$result =  max(0,$a-$b);

3、导入数据时,可以选择采用csv格式 php对getcsv处理起来非常方便。

4、在替换字符串方面 str_replace()比正则表达式更高效。实际上,根据Making the Web所说,str_replace()比像ereg_replace()和 preg_replace()这样的正则表达式效率要高61%。

5、if($a==true) if($a)

6、用isset判断变量和元素是否存在速度较高

7、尽量使用三目运算

8、适当写if行语句。适当在function内使用return语句 减少分支

9、使用memcache mogodb等降低程序与数据库负担

10、临时数据可以使用sqllite记录

PHP 相关文章推荐
PHP的一个完整SMTP类(解决邮件服务器需要验证时的问题)
Oct 09 PHP
解析php5配置使用pdo
Jul 03 PHP
php利用单例模式实现日志处理类库
Feb 10 PHP
PHP缓存机制Output Control详解
Jul 14 PHP
用php代码限制国内IP访问我们网站
Sep 26 PHP
php上传大文件失败的原因及应对策略
Oct 20 PHP
学习php设计模式 php实现桥梁模式(bridge)
Dec 07 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
thinkPHP框架实现多表查询的方法
Jun 14 PHP
tp5(thinkPHP5)框架数据库Db增删改查常见操作总结
Jan 10 PHP
Laravel 实现数据软删除功能
Aug 21 PHP
YII2框架中添加自定义模块的方法实例分析
Mar 18 PHP
php实现的任意进制互转类分享
Jul 07 #PHP
Apache服务器下防止图片盗链的办法
Jul 06 #PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 #PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 #PHP
jquery+php实现导出datatables插件数据到excel的方法
Jul 06 #PHP
php导出中文内容excel文件类实例
Jul 06 #PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 #PHP
You might like
用PHP调用数据库的存贮过程!
2006/10/09 PHP
PHP XML备份Mysql数据库
2009/05/27 PHP
关于图片按比例自适应缩放的js代码
2011/10/30 Javascript
JavaScript异步编程Promise模式的6个特性
2014/04/03 Javascript
node.js中的fs.exists方法使用说明
2014/12/17 Javascript
微信JSSDK上传图片
2015/08/23 Javascript
JavaScript引用类型和基本类型详解
2016/01/06 Javascript
NodeJS的Promise的用法解析
2016/05/05 NodeJs
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
微信小程序表单验证功能完整实例
2017/12/01 Javascript
微信小程序实现默认第一个选中变色效果
2018/07/17 Javascript
[06:23]2014DOTA2西雅图国际邀请赛 小组赛7月12日TOPPLAY
2014/07/12 DOTA
[02:12]探秘2016国际邀请赛中国区预选赛选手房间
2016/06/25 DOTA
Python中random模块生成随机数详解
2016/03/10 Python
python的socket编程入门
2018/01/29 Python
Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法
2018/05/04 Python
通过python顺序修改文件名字的方法
2018/07/11 Python
python os.path模块常用方法实例详解
2018/09/16 Python
python实现文件的备份流程详解
2019/06/18 Python
PyQtGraph在pyqt中的应用及安装过程
2019/08/04 Python
对python 树状嵌套结构的实现思路详解
2019/08/09 Python
numpy实现神经网络反向传播算法的步骤
2019/12/24 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
2020/02/21 Python
python新式类和经典类的区别实例分析
2020/03/23 Python
python 用struct模块解决黏包问题
2020/11/07 Python
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
环境工程与管理大学毕业生求职信
2013/10/02 职场文书
本科生职业生涯规划书范文
2014/01/21 职场文书
期末自我鉴定
2014/02/02 职场文书
英语故事演讲稿
2014/04/29 职场文书
五五普法心得体会
2014/09/04 职场文书
罚站检讨书
2015/01/29 职场文书
2017寒假社会实践心得体会范文
2016/01/14 职场文书
2016年庆祝六一儿童节活动总结
2016/04/06 职场文书
员工工作心得体会
2019/05/07 职场文书
Win10鼠标轨迹怎么开 Win10显示鼠标轨迹方法
2022/04/06 数码科技