您所在位置: 网站首页 / 文档列表 / PHP资料 / 文档详情
PHP开发的经验总结.docx 立即下载
上传人:一只****呀淑 上传时间:2024-09-07 格式:DOCX 页数:5 大小:12KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

PHP开发的经验总结.docx

PHP开发的经验总结.docx

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PHP开发的经验总结PHP开发的经验总结PHP开发有什么需要注意的呢,下面小编为大家带来了PHP开发的经验总结,欢迎大家阅读!PHP开发的经验总结1.首要意识:安全大多数时候,我们开发的Web程序都是需要跟数据库打交道的,所以这里几乎可以说SQL注入是一个怎么也无法避免要拿出来讨论一下的问题。而且近年来像XSS和CSRF攻击也变得大行其道,使得"黑客"们貌似又有了一把把利器,而我们总是处于被动的状态。不过我们要记得是下面这两个原则:1.永远不要相信用户输入的东西。(老话了,但这是真的)2.将自己需要输出的数据进行转义。简单来说就是:filterinput,escapeoutput如果你是新手,不要再使用类似以下的查询语句了:SELECTFROMusersWHEREusername=$_POST['username']ANDpassword=$_POST['password'];还有就是,使用PDO或Mysqli吧,不要再使用老式的mysql操作了。而对于,CSRF的解决方案,目前接触的都是给每一次的表单提交都设置一个token值,然后在表单提交的时候校验之即可。2.明确地知道各个比较操作符的差别PHP的比较操作符,这其实可以说是一个很小的注意点,但是在某些时候真的很重要。比如说很多时候我们得考虑清楚,该用==还是===,如果你使用过strpos()这个函数,下面的代码可能会给你一个直观的感受:上面这段代码的'运行结果其实是输出Chrisisnotanauthor,但是现实情况是,Chris&Sean真的是Author啊,怎么回这样呢?其实是这样的:Chris正好出现在Chris&Sean首位开始处,也就是0这个位置,所以substr()返回了,由于条件判断语句中bool判断,所以0作为了false处理,于是程序输出了Chrisisnotanauthor,但是在这种情况之下我们该怎么处理呢?我们其实可以这样的:这里的!==和!=的不同就体现出来了。3.可以减少使用else就少使用else这个貌似从我一开始接触编程就有的一个想法,因为每次看到if(){}else{}就有一种这一段其实可以写得更好的感觉,因为一旦你减少了使用else关键字,你得代码会减少两行!没错,两行也是我们的追求,而且,从我的经验看,else少的代码貌似可读性更高,对我来说。if(thiscondition){$x=5;}else{$x=10;}如果,在$x的默认值是10,还是下面这样写感觉比较好:$x=10;if(thiscondition){$x=5;}4.去掉不必要的括号这里的目的其实跟else关键字部分是一样的,我们是为了更简短的代码和更优越的可读性,对以下的情况,你都应该考虑优化代码:if($gollum=='halfling'){$height--;}其实是可以这样的:if($gollum=='halfling')$height--;你甚至可以这样:PHP开发的9条经验总结是不是有一种又短又清晰的感觉?5.多用str_replace()在很多时候我们需要对一些字符串进行替换,在PHP中有以下几个函数可以达到这个目的:str_replace()ereg_replace()preg_replace()如果你确实是需要使用正则匹配,那就使用preg_replace(),而如果在可实现替换的情况下,请使用str_replace(),因为据不完全统计,str_replace()的效率在这三个当中是最高的。6.使用三元运算符这个可能很多人都有这个感受,使用三元运算符之后,我们可以去掉一堆ifelse语句了,代码又短又爽。$host=strlen($host)>0?$host:htmlentities($host);7.使用缓存目前PHP热门的缓存技术可能就是Redis和Memcached了,在PHP的官方文档中,也有Memcached的使用教程,至于Redis,我最近在研究中,后续会给出一些教程,如果一切顺利的话。8.使用框架框架的好处很多,可能是在性能方面有所损失外,貌似找不到不用框架的理由了,框架即可以加快你的开发速度,也可以让你在写代码的过程中撸的舒舒服服,而且想很多安全问题,你都会得到很好的解决。我这里首推Laravel,不过像Yii2SlimSymfony都是非常棒的框架,除了Symfony没有尝过过之外,剩下的三个我都有使用经历,最后就基本是用Laravel了。不过我建议的Laravel可能不适合你,这还是得看个人喜好。9.用isset()代替strlen()如果你需要在项目代码中需要根据一个字符串的长度来做条件判断,这个时候非常推荐你直接使
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

PHP开发的经验总结

文档大小:12KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
年会员
99.0
¥199.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用

手机号注册 用户名注册
我已阅读并接受《用户协议》《隐私政策》
已有账号?立即登录
我已阅读并接受《用户协议》《隐私政策》
已有账号?立即登录
登录
手机号登录 微信扫码登录
微信扫一扫登录 账号密码登录

首次登录需关注“豆柴文库”公众号

新用户注册
VIP会员(1亿+VIP文档免费下)
年会员
99.0
¥199.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用