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投票系统防刷票判断流程分析
Feb 04 PHP
提高PHP性能的编码技巧以及性能优化详细解析
Aug 24 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
Jan 17 PHP
PHP中nowdoc和heredoc使用需要注意的一点
Mar 21 PHP
关于php支持分块与断点续传文件下载功能代码
May 09 PHP
PHP使用strtotime计算两个给定日期之间天数的方法
Mar 18 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
Jul 04 PHP
PHPStrom中实用的功能和快捷键大全
Sep 23 PHP
PHP命名空间和自动加载类
Apr 03 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
May 13 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
Feb 23 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类的静态(static)方法和静态(static)变量使用介绍
2012/02/19 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
2019/10/10 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
js实现的仿新浪微博完美的时间组件升级版
2011/12/20 Javascript
Javascript设置对象的ReadOnly属性(示例代码)
2013/12/25 Javascript
JS实现仿百度输入框自动匹配功能的示例代码
2014/02/19 Javascript
JQuery设置获取下拉菜单某个选项的值(比较全)
2014/08/05 Javascript
javascript实现动态表头及表列的展现方法
2015/07/14 Javascript
基于jQuery ligerUI实现分页样式
2016/09/18 Javascript
JavaScript基本类型值-Number类型
2017/02/24 Javascript
AngularJS 异步解决实现方法
2017/06/12 Javascript
深入浅出webpack教程系列_安装与基本打包用法和命令参数详解
2017/09/10 Javascript
Node.js成为Web应用开发最佳选择的原因
2018/02/05 Javascript
在Express中提供静态文件的实现方法
2019/10/17 Javascript
Vue extend的基本用法(实例详解)
2019/12/09 Javascript
JavaScript canvas仿代码流瀑布
2020/02/10 Javascript
谈一谈vue请求数据放在created好还是mounted里好
2020/07/27 Javascript
Vue中关闭弹窗组件时销毁并隐藏操作
2020/09/01 Javascript
如何在JS文件中获取Vue组件
2020/09/16 Javascript
[03:12]完美世界DOTA2联赛PWL DAY9集锦
2020/11/10 DOTA
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
influx+grafana自定义python采集数据和一些坑的总结
2018/09/17 Python
Python 支付整合开发包的实现
2019/01/23 Python
Python中psutil的介绍与用法
2019/05/02 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
Python列表切片常用操作实例解析
2019/12/16 Python
Python中bisect的使用方法
2019/12/31 Python
HTML5离线缓存Manifest是什么
2016/03/09 HTML / CSS
Champion澳大利亚官网:美国冠军运动服装
2018/05/07 全球购物
入党申请人的自我鉴定
2013/12/01 职场文书
自动化专业个人求职信范文
2013/12/30 职场文书
王老吉广告词
2014/03/20 职场文书
法人代表证明书格式
2014/10/01 职场文书
学习焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
vue3使用vuedraggable实现拖拽功能
2022/04/06 Vue.js