一.命名规范
坚持以下命名规范能减少很多报错
1.驼峰法:类名(首字母大写),属性名和方法名(首字母小写)
2.下划线法:函数名,数据表名,字段名
3.双下划线开头:__call,__autoload(统称魔术方法)
二.控制器技巧
1.配置参数应放在控制器开头,
2.善于使用控制器初始化方法_initialize(),
3.返回自身方法和属性是
return $this->method
return $this->property
注意不加括号,
如果是静态方法和属性应该是
self::$method
self::$property
注意方法和属性前有美元符号
4.针对一个模型的CRUD操作可以写在一个方法里
5.善用三元运算符可以简化代码,常用于判断一个变量是否取预设值还是新设值
$data=$data?:Config('data')
6.判断是否存在的函数:is_null,is_empty,isset,file_exist
可参考PHP中is_empty、is_null、isset的区别
三、模型技巧
1.一对一和一对多,有外键的是外表,主表关联用hasOne和hasMany,外表关联用belongsTo,
2.模型以下方法很有用
获取器getStatusAttr
修改器setStatusAttr
自动写入时间戳
protected $autoWriteTimestamp='int';
protected $createTime='createtime';
protected $updateTime='updatetime'
添加输出字段
protected $append=['goods','type'];
控制器中使用关联预载入
User::all(null,'profile');
User::get(1,'profile');
四、其他技巧
1.检查语法
用sublime text查找是否存在中文分号和中文逗号,
2.数据转换
thinkphp5会自动实现json和数列互转,不用手动转换