位置: 编程技术 - 正文

关于PHP开发的9条建议(php开发常用技术)

编辑:rootadmin

推荐整理分享关于PHP开发的9条建议(php开发常用技术),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php开发实例大全,php开发实战1200例,php开发常用技术,php开发常用技术,php开发实例大全,基于php开发,基于php开发,php开发实战权威指南,内容如对您有帮助,希望把文章链接给更多的朋友!

本文只是个人从实际开发经验中总结的一些东西,并不是什么名言警句,写出来有两个目的:一是时刻提醒自己要按照这些知识点来写自己代码,二是为了分享,说不定对你有用呢?万一,是吧。。。

1.首要意识:安全

大多数时候,我们开发的Web程序都是需要跟数据库打交道的,所以这里几乎可以说SQL注入是一个怎么也无法避免要拿出来讨论一下的问题。而且近年来像XSS和CSRF攻击也变得大行其道,使得"黑客"们貌似又有了一把把利器,而我们总是处于被动的状态。不过我们要记得是下面这两个原则:

1. 永远不要相信用户输入的东西。(老话了,但这是真的)2. 将自己需要输出的数据进行转义。

简单来说就是:filter input , escape output

如果你是新手,不要再使用类似以下的查询语句了:

SELECT FROM users WHERE username = $_POST['username'] AND password = $_POST['password'];

还有就是,使用PDO或Mysqli吧,不要再使用老式的mysql操作了。

而对于,CSRF的解决方案,目前接触的都是给每一次的表单提交都设置一个token值,然后在表单提交的时候校验之即可。

2.明确地知道各个比较操作符的差别

PHP的比较操作符,这其实可以说是一个很小的注意点,但是在某些时候真的很重要。比如说很多时候我们得考虑清楚,该用==还是===,如果你使用过strpos()这个函数,下面的代码可能会给你一个直观的感受:

上面这段代码的运行结果其实是输出Chris is not an author,但是现实情况是,Chris & Sean真的是Author啊,怎么回这样呢?其实是这样的:Chris正好出现在Chris & Sean首位开始处,也就是0这个位置,所以substr()返回了,由于条件判断语句中bool判断,所以0作为了false处理,于是程序输出了Chris is not an author,但是在这种情况之下我们该怎么处理呢?我们其实可以这样的:

这里的!==和!=的不同就体现出来了。

3.可以减少使用else就少使用else

这个貌似从我一开始接触编程就有的一个想法,因为每次看到if(){}else{}就有一种这一段其实可以写得更好的感觉,因为一旦你减少了使用else关键字,你得代码会减少两行!没错,两行也是我们的追求,而且,从我的经验看,else少的代码貌似可读性更高,对我来说。

如果,在$x的默认值是,还是下面这样写感觉比较好:

关于PHP开发的9条建议(php开发常用技术)

4.去掉不必要的括号

这里的目的其实跟else关键字部分是一样的,我们是为了更简短的代码和更优越的可读性,对以下的情况,你都应该考虑优化代码:

其实是可以这样的:

你甚至可以这样:

是不是有一种又短又清晰的感觉?

5.多用str_replace()

在很多时候我们需要对一些字符串进行替换,在PHP中有以下几个函数可以达到这个目的:

如果你确实是需要使用正则匹配,那就使用preg_replace(),而如果在可实现替换的情况下,请使用str_replace(),因为据不完全统计,str_replace()的效率在这三个当中是最高的。

6.使用三元运算符

这个可能很多人都有这个感受,使用三元运算符之后,我们可以去掉一堆if else语句了,代码又短又爽。

7.使用缓存

目前PHP热门的缓存技术可能就是Redis和Memcached了,在PHP的官方文档中,也有Memcached的使用教程,至于Redis,我最近在研究中,后续会给出一些教程,如果一切顺利的话。

8.使用框架

框架的好处很多,可能是在性能方面有所损失外,貌似找不到不用框架的理由了,框架即可以加快你的开发速度,也可以让你在写代码的过程中撸的舒舒服服,而且想很多安全问题,你都会得到很好的解决。我这里首推Laravel,不过像Yii2 Slim Symfony都是非常棒的框架,除了Symfony没有尝过过之外,剩下的三个我都有使用经历,最后就基本是用Laravel了。不过我建议的Laravel可能不适合你,这还是得看个人喜好。

9.用isset()代替strlen()

如果你需要在项目代码中需要根据一个字符串的长度来做条件判断,这个时候非常推荐你直接使用isset(),因为在同等条件之后,isset()的速度是strlen()的五倍左右,所以:

以上的两个条件判断都是可以达到相同的目的,但是我推荐使用的是第一种。

以上所述就是本文的全部内容了,希望大家能够喜欢

教你在PHPStorm中配置Xdebug 本教程适用于Laravel项目的使用者,并默认使用Homestead作为开发环境的虚拟机。1.确认你已经安装了Xdebug通过ssh登录你的homestead,执行ls/etc/php5/fpm/conf.d如

ThinkPHP安装和设置 前提:此教程适用于ThinkPHP3.2+今天起的以后几天,将放出ThinkPHP的系列教程,一共七篇,需要的同学可以自行点赞收藏。1.安装安装ThinkPHP的方法很多,

ThinkPHP路由详解 有了基本配置,我们就可以来访问我们的应用默认首页了。进入到项目目录,可以直接使用PHP内置服务器来开始访问,比如:php-Slocalhost:浏览器输入l

标签: php开发常用技术

本文链接地址:https://www.jiuchutong.com/biancheng/275634.html 转载请保留说明!

上一篇:php检测文本的编码(php检测文件是否存在)

下一篇:教你在PHPStorm中配置Xdebug(phpstorm如何运行)

  • 成立蔬菜公司免税吗
  • 税务稽查以前年度进项税额转出
  • 出口退免税管理工作规范2.0
  • 企业所得税的减免税额和抵免税额区别
  • 安防视频监控工程项目
  • 个体户年报纳税额怎么填
  • 烟叶税税率计算方法
  • 金税盘怎么向分行汇款
  • 购置税发票如何下载
  • 房屋租赁合同印花税计税依据
  • 季节性停工折旧吗
  • 电商返佣平台有风险吗
  • 向税务局缴纳工伤保险费有发票吗
  • 行政单位财务长期挂账处理办法
  • 公司股权转1元转让还涉及哪些税务风险?
  • 一个项目可以有几个单位工程
  • 行政事业单位国有资产处置收入包括
  • 公司承担的个人所得税怎么做分录
  • 住宿费专票报销怎么做账
  • 个体户怎么给供货公司
  • 长期待摊费用的内容和特征
  • 虚开增值税简单例子
  • 货币性项目和非货币性项目的区别是什么?如何进行处理?
  • 小企业的费用应当在发生时计入当期损益
  • 清算期间未申报债权
  • 非关联企业无偿拆借资金企业所得税
  • windows10如何关闭病毒和威胁防护设置
  • 网上纳税申报的基本流程是什么
  • 一般纳税人购进农产品如何抵扣进项税额
  • 初识年岁尚温柔 小说 免费
  • 苹果14发布会时间
  • 老电脑更新系统会怎么样
  • PHP:mcrypt_enc_self_test()的用法_Mcrypt函数
  • 海恩斯科普简介
  • 三万个字多久写完
  • 基于Python实现五大常用分类算法(原理+代码)
  • php checkbox使用
  • 钉钉的组织在线怎么设置
  • 城建税退回与不退税区别
  • vue2 diff算法
  • 企业销售旧固定产品
  • 公司的日常费用包括哪些
  • 农产品收购发票可以抵扣进项税额吗
  • 限售股 缴税
  • mongodb常见问题
  • 营改增一般纳税人可以选择简易计税
  • 多计提的增值税怎么冲减
  • PostgreSQL教程(十五):系统表详解
  • 应付利息的账务处理
  • 预提费用在汇算清缴时调整
  • 建筑行业挂靠代扣税款如何入账?
  • 发票跨年冲红怎么做账
  • 月末结转销售会计分录
  • 以现金支付办公用品费440元
  • 个税抵扣项目是什么
  • 会计凭证的摘要 报销 保险费用
  • mysql多表查询方式
  • mac安装mysql
  • ubuntu通讯软件
  • win7系统在哪里设置ip地址
  • ubuntu16lts
  • 常见内存大小
  • windows7功能打不开怎么办
  • xp系统怎么没有无线网络连接
  • centos ftp上传文件
  • win8系统如何关闭杀毒系统
  • windows8介绍
  • win10英文版系统怎么完全改为中文
  • linux查看系统配置内存大小
  • 每日十条中医用药经验
  • jquery表单验证代码
  • android开发mvc mvp mvvm
  • require jquery
  • nodejs npm install全局安装和本地安装的区别
  • SendTo增强版 批处理实用小工具
  • 批处理文件是将需要连续使用的可多次重复使用的
  • javascript解码与编码
  • jquery操作
  • 物流企业需要缴税吗
  • 沈阳沈河区税务局待遇
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设