PHP开发的一些注意点总结


Posted in PHP onOctober 12, 2010

Linux系统的使用

现在标配的系统是 Linux + Nginx + PHP + MySQL ,这样的配置越来越多的大公司在用的了说到配置不同的是一个公司的规约,比如说挂载一般分为2个盘, / 下面划分为系统用的分区10G 足够 剩余空间划给/home的了.这点我感觉比较好的,原来我划的太多的了,其次是对于系统的安全登陆,现在小公司或者个人的做法是通过网络,直接使用帐号或者密码直接登陆而相对大公司的做法是,先登陆relay中转服务器,然后通过中转服务器登陆到目标服务器,这样帐号会被记录,安全性比较高,现在一般用了TOKEN,RSASecurID进行密码登陆,提高了整体的安全性了.

PHP调用shell命令

在之前没有使用到php调用到shell来执行一些额外的任务,现在会经常用到的了,这样就可以做脚本之外的事情了,这点感觉比较方便

编码习惯上对于编码习惯,每个公司和团队往往使用的都不同,特别是编程IDE的不同导致了编码规范的不同而约定也就不同的了,不过对于整体的习惯经过团队全体人员的决议,就定下来了,这点在原来的小公司没有要求的很严格,现在也是这样的,看来这个和团队文化还是有很大关系的了,这点团队的人相处久了,自然就熟悉的了.

函数返回值

一般对于获取失败的返回值都返回的是false,对于出现的多种情况,返回int的数值,如果是数据则返回的是array或者其他,对于现在的函数由于memcache的使用,现在用了很多的函数内的cache操作,返回值也是先从cache取得,如果没有在到数据库中取得,然后写入cache,然后返回数据

对于处理数据写入原来的写法是在$_POST && $_GET 过来的数据,然后进行addslashes处理,现在的做法是直接接收,然后进行数据判断是否符合要求,然后在拼接sql,然后对sql语句进行mysql_escape_string处理,然后在读出数据的时候,使用htmlspecialchars进行处理,这样显示就没有问题的了.

锁机制的PHP实现

前段时间写过一篇文章并发下常见的加锁及锁的PHP具体实现

关于队列的分发问题

使用了MQ进行Memcache数据的分发,这点还没弄明白,具体的实现,得在请教的了

关于PHP的错误级别的认识

原来对于错误级别,在开发的时候用的都是比较轻的E_ALL | E_STRICT 现在换成了E_ALL & ~E_STRICT 养成变量定义的好习惯,使用时候初始化是比较必要的.

对于防止用户发表违法信息及广告的控制及用户行为频率的控制

对于用户发布的广告,违法信息都用SPAM系统进行了控制,防止出现问题,对于用户行为进行了限制,防止用户过多的控制资源,对于系统中的变量不能使用自增的唯一ID,需要进行加密处理,返回系统信息被其他人获得.包括用户ID,数据信息ID的加密处理

PHP 相关文章推荐
一段php加密解密的代码
Oct 09 PHP
linux下删除7天前日志的代码(php+shell)
Jan 02 PHP
PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍
Sep 11 PHP
基于php缓存的详解
May 15 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 PHP
PHP中的traits简单使用实例
May 13 PHP
简单概括PHP的字符串中单引号与双引号的区别
May 07 PHP
php英文单词统计器
Jun 23 PHP
PHP时间函数使用详解
Mar 21 PHP
RSA实现JS前端加密与PHP后端解密功能示例
Aug 05 PHP
php实现推荐功能的简单实例
Sep 29 PHP
php修改word的实例方法
Nov 17 PHP
php更改目录及子目录下所有的文件后缀的代码
Sep 24 #PHP
比较全面的PHP数组的使用方法小结
Sep 23 #PHP
PHP之COOKIE支持详解
Sep 20 #PHP
PHPCMS的使用小结
Sep 20 #PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
Sep 12 #PHP
zen cart新进商品的随机排序修改方法
Sep 10 #PHP
php表单转换textarea换行符的方法
Sep 10 #PHP
You might like
简单实用的.net DataTable导出Execl
2013/10/28 PHP
php获取mysql字段名称和其它信息的例子
2014/04/14 PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
2019/10/13 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
jquery animate 动画效果使用说明
2009/11/04 Javascript
判断浏览器的内核及版本号方法汇总
2015/01/05 Javascript
js全选实现和判断是否有复选框选中的方法
2015/02/17 Javascript
使用angularjs创建简单表格
2016/01/21 Javascript
javascript每日必学之条件分支
2016/02/17 Javascript
jQuery基于ID调用指定iframe页面内的方法
2016/07/06 Javascript
jQuery简单实现iframe的高度根据页面内容自适应的方法
2016/08/01 Javascript
Vue.js每天必学之过滤器与自定义过滤器
2016/09/07 Javascript
各式各样的导航条效果css3结合jquery代码实现
2016/09/17 Javascript
原生JS获取元素的位置与尺寸实现方法
2017/10/18 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
2018/03/06 Javascript
JS实现排行榜文字向上滚动轮播效果
2019/11/26 Javascript
如何实现echarts markline标签名显示自己想要的
2020/07/20 Javascript
[02:17]2016国际邀请赛中国区预选赛VG战队领队采访
2016/06/26 DOTA
[01:23:24]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第三场 2月7日
2021/03/11 DOTA
python实现合并两个数组的方法
2015/05/16 Python
Python的time模块中的常用方法整理
2015/06/18 Python
Python实现的字典排序操作示例【按键名key与键值value排序】
2018/12/21 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
详解python执行shell脚本创建用户及相关操作
2019/04/11 Python
通过 Python 和 OpenCV 实现目标数量监控
2020/01/05 Python
Python如何使用ElementTree解析xml
2020/10/12 Python
使用python操作lmdb对数据读取的实例
2020/12/11 Python
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
美国钻石商店:Zales
2016/11/20 全球购物
EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的
2015/07/24 面试题
《花的勇气》教后反思
2014/02/12 职场文书
房屋财产继承协议书范本
2014/11/03 职场文书
优秀团队申报材料
2014/12/26 职场文书
7个你应该知道的JS原生错误类型
2021/04/29 Javascript
对PyTorch中inplace字段的全面理解
2021/05/22 Python
GoFrame gredis缓存DoVar Conn连接对象 自动序列化GoFrame gredisDo/DoVar方法Conn连接对象自动序列化/反序列化总结
2022/06/14 Golang