10条php编程小技巧
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会在双引号包围的字符串中搜寻变量,单引号则 不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的"函数"(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加 上了双引号). 1.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍. 2.$row['id'] 的速度是$row[id]的7倍. 3.echo 比 print 快,并且使用echo的多重参数(译注
-
10条PHP高级技巧[修正版]
1.使用一个SQL注射备忘单 一个基本的原则就是,永远不要相信用户提交的数据. 另一个规则就是,在你发送或者存储数据时对它进行转义(escape). 可以总结为:filter input, escape output (FIEO). 输入过滤,输出转义. 通常导致SQL注射漏洞的原因是没有对输入进行过滤,如下语句: 复制代码 代码如下: <?php $query = "SELECT * FROM users WHERE name = '{$_GET['name']}'"; 在这个
-
php数组索引与键值操作技巧实例分析
本文实例讲述了php数组索引与键值操作技巧.分享给大家供大家参考.具体如下: <?php $array = array("a", "b","c"); //定义数组 $array[] = "Simon"; //增加一个新的数组元素 print_r($array); //输出数组 ?> <?php $array = array("a", "b","c")
-
PHP小技巧之函数重载
1.可以使用func_get_args()和func_num_args()这两个函数实现函数的重载!! PHP代码: 复制代码 代码如下: function rewrite() { $args = func_get_args(); if(func_num_args() == 1) { func1($args[0]); } else if(func_num_args()
-
PHP网站开发中常用的8个小技巧
PHP是一种用于创建动态WEB页面的服务端脚本语言.如同ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访 问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器.但是与ASP或 ColdFusion不同,PHP是一种源代码开放程序,拥有很好的跨平台兼容性.用户可以在Windows NT系统以及许多版本的Unix系统上运行PHP,而且可以将PHP作为Apache服务器的内置模块或CGI程序运行. 本
-
PHP Mysql编程之高级技巧
笔者做了以下的尝试. <?php $data_time="1998-12-31 23:59:59"; $connect_id=mysql_connect('localhost'); $query_id=mysql_query("SELECT DATE_ADD(' $data_time',INTERVAL 1 YEAR)", $connect_id); $data_time=mysql_result( $query_id,0); mysql_close(
-
php静态文件返回304技巧分享
有时一些静态文件(如图片)会由php输出,会发现请求都是200,静态文件每次都去服务器上请求太浪费资源了,这时如何让浏览器缓存图片呢?就需要我们在php中输出304了. 我们可以利用php中的 HTTP_IF_MODIFIED_SINCE 结合etag来干这事.Etag没有明确规定的格式,我们可以用文件修改时间的md5值,代码如下: 复制代码 代码如下: private function _addEtag($file) { $last_modified_time = filemtime(
-
php定界符<<<使用技巧和实例
php界定符就是为了照样输出内容.它的格式如下: 复制代码 代码如下: $str = <<< EOF Here is your string ...... EOF; 其中EOF是自定义的变量,但要成对出现! 附上一段php示例代码: 复制代码 代码如下: <?php $a = "www.jb51.net"; print <<< jb51 <select> <option value="1"
-
十个PHP高级应用技巧果断收藏
PHP 独特的语法混合了 C.Java.Perl 以及 PHP 自创新的语法.它可以比 CGI或者Perl更快速的执行动态网页.用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多.下面介绍了十个PHP高级应用技巧. 1, 使用ip2long() 和 long2ip() 函数来把 IP 地址转化成整型存储到数据库里. 这种方法把存储空间降到了接近四分之一(char(15) 的 15 个字节对整形的 4 个字节),计算
-
php数组键名技巧小结
本文较为详细的总结了php数组键名的技巧.分享给大家供大家参考.具体分析如下: 1.$arr[true] 等价于 $arr[1]:$arr[false] 等价于 $arr[0]. 2.使null做为键名,相当于创建或覆盖一个$arr[null],可以使用$arr[null]或$arr[""]来访问. 3.使用带小数点的数字作为键名时,键名会自动截取整数部分作为键名.如$arr[123.45]=5,你使用$arr[123.45]或$arr[123]均可以取得键值:用foreach遍历时,
-
PHP中文编码小技巧
PHP程序设计中中文编码问题曾经困扰很多人,导致这个问题的原因其实很简单,每个国家(或区域)都规定了计算机信息交换用的字符编码集,如美国的扩展 ASCII 码,中国的 GB2312-80,日本的 JIS 等.作为该国家/区域内信息处理的基础,字符编码集起着统一编码的重要作用.字符编码集按长度分为 SBCS(单字节字符集),DBCS(双字节字符集)两大类.早期的软件(尤其是操作系统),为了解决本地字符信息的计算机处理,出现了各种本地化版本(L10N),为了区分,引进了 LANG, Codepage
-
PHP的十个高级技巧(上中下)第1/3页
全球超过300万个互联网网站的管理员都在使用PHP,使得它成为最为普及的服务器端脚本语言之一.其特点是运行速度快.稳定可靠.跨平台,而且是开放源代码软件.随你使用的水平不同,PHP可以很简单,也可以很复杂,可以只使用它发送HTML表格元素,还可以在PHP应用程序中集成Java和XML. 如果你对PHP有一定的了解或者看过一些初步的教材,这些技巧可以扩展你对PHP的认识,使你掌握一些常见的和高级的PHP功能. 一.把PHP安装为Apache的DSO PHP在Linux/Unix平台上经常与Apa
-
php导入大量数据到mysql性能优化技巧
本文实例讲述了php导入大量数据到mysql性能优化技巧.分享给大家供大家参考.具体分析如下: 在mysql中我们结合php把一些文件导入到mysql中,这里就来分享一下我对15000条记录进行导入时分析与优化,需要的朋友可以参考一下. 之前有几篇文章,说了最近tiandi在帮朋友做一个小项目,用于统计电话号码的,每次按需求从数据库里随机生成打包的电话号码,然后不停地让人打这些电话号码推销产品(小小鄙视一下这样的行为).但是朋友要求帮忙,咱也不能不帮啊,是吧.程序两个星期前已经做好,测试完毕交工
-
PHP编程之高级技巧——利用Mysql函数
尽管PHP为我们提供了很多函数,但有些东西处理起来还是不很方便.譬如PHP提供的日期时间函数就很有限.Mysql为我们提供了不少此类的函数.是否可以利用Mysql函数来处理PHP程序呢?笔者做了以下的尝试. <?php $data_time="1998-12-31 23:59:59"; $connect_id=mysql_connect('localhost'); $query_id=mysql_query("SELECT DATE_ADD('$
随机推荐
- vbs在网页中显示服务
- java文件重命名(文件批量重命名)实例程序代码分享
- IOS开发中取消文本框输入时的小键盘
- php获取当前时间的毫秒数的方法
- Symfony2获取web目录绝对路径、相对路径、网址的方法
- C#一个方法返回多个值示例
- mysql获取分组后每组的最大值实例详解
- 解决mysql安装时出现error Nr.1045问题的方法
- MySql批量插入优化Sql执行效率实例详解
- 使用 eAccelerator加速PHP代码的目的
- java双向循环链表的实现代码
- linux 入侵常用命令汇编
- jQuery插件Tooltipster实现漂亮的工具提示
- 关于脚本操作文本域的问题
- Android中ListView的几种常见的优化方法总结
- 关于类、私有属性与继承的理解
- RecyclerView底部分割线去除的方法
- PHP 数组入门教程小结
- php中通过curl smtp发送邮件
- PHP迭代器和迭代的实现与使用方法分析