作者:林老悲-- | 来源:互联网 | 2023-08-11 18:24
一、PHP相关命名规范1、方法命名方法,指的是在类中定义的函数,方法的命名使用驼峰法,并且首字母小写或者使用下划线_,例如:getUserName(),_parseType()
一、PHP相关命名规范
1、方法命名
方法,指的是在类中定义的函数,方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如:getUserName( ),
_parseType( ),通常下划线开头的方法属于私有方法;
2、函数命名
函数是指不在类中定义的函数,例如在公共文件中的函数。函数的命名使用小写字母和下划线的方式,例如 get_client_ip( );
3、变量命名
变量,也叫属性。属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 tableName、_instance,通常下划线开头的属
性属于私有属性;
4、常量命名
常量以大写字母和下划线命名,例如 HAS_ONE和 MANY_TO_MANY;
5、配置参数命令
配置参数以大写字母和下划线命名,例如 HTML_CACHE_ON = 1;
二、编码风格规范
1、禁止出现多行空格
如果不是特殊需要,在代码文件中禁止出现多行空格。
2、缩进
代码中需要适当的缩进,否则会加大维护难度。
3、目录结构
一般框架都是有默认的目录结构,非特殊情况不允许修改目录结构,例如thinkphp默认的是MVC架构的目录结构,避免由于更改目录结
构带来的维护困难。Controller文件放在Controller目录 中,Model文件放在Model目录中,View文件放在View目录中,不要随意更改
目录的位置和目录名称。
三、安全
1、输入框
所有的输入框请设置最大长度,必填项请做必填的限制。例如帐号CHN00000001,只能输入11位,那么最大输入长度只能为11,并且添
加required="required"属性。
2、文本编辑器
前台页面尽量不要使用富文本编辑器,因为富文本编辑器可以输入代码,有很大的安全隐患。如果要使用,必须对提交内容进行过滤,例
如使用htmlspecialchars()进行过滤。
3、后台接收参数
PHP从表单获取url中获取参数必须进行字段类型判断。例如接收数字的参数不能含有其他字符,只能是数字,建议编写公共的检查接收
post和get参数的函数,对每一个参数值进行验证,防止注入恶意代码。
接收长篇内容的变量,例如留言内容等变量时来源gaodaimacom搞#代%码网,必须进行特殊字符的过滤操作。比如strip_tags()、htmlspecialchars()、htmlentities()等
函数可以起作用,防止用户注入恶意代码进行跨站脚本攻击。
4、权限控制
凡是需要登录之后才可以访问的页面加载页面之前必须做好登录检测,登录超时的必须重新登录。需要权限访问的页面和功能必须做好权
限控制和检测。
四、并发和大流量处理
1、重复提交
为了防止用户在提交表单时重复提交,表单必须设置提交验证。例如商城提交订单时,必须防止用户重复提交。Thinkphp框架中提供表
单令牌的功能可以防止重复提交,原生php也可以在打开页面前生成token,并保存在session,然后将token传递到页面表单字段,在表
单提交时将token一起提交,在后台接收时验证token,验证后销毁session的保存的token。
2、session
一次性验证的session使用后必须销毁,例如短信验证,表单验证等,防止一次性session被重复利用,例如在用户在注册时如果不销毁短