最近总结了一下php的项目代码规范:

  1. 代码规范遵循PSR
  2. model里对某个表进行查询时只调用一个方法,且这个方法唯一(使用特殊前缀?),所有对数据的操作都建立在该方法之上。
  3. 需要调用外部接口时需经过API层。
  4. 不能跨级调用,例如可以controller->model->dao,而不能直接controller->dao
  5. 不能在Components或者Dao层里直接查询数据库。
  6. 访问数据库需要经过model。
  7. 使用ORM查询数据库,结果需要返回数组,多条数据toArray(),一条数据toArray()[0],尽量不要使用first()->toArray()。
  8. dao层按模块分目录。
  9. 配置都放Common里?公用。
  10. 事务使用transaction回调的方法代替手动begin和commit。
  11. 定时脚本需要try catch,异常后发邮件到负责人。
  12. 重要的地方try catch异常后记日志。
  13. 除了临时脚本handleController外,控制器不能直接调用DAO层,
  14. 参数验证放在控制器里,业务验证放在model里?
  15. 和业务无关的公用方法放在FUnctils里
  16. 避免N+1,优化N+1
  17. 使用强等于
  18. 尽量少用联表查询
  19. 小心ORM,它会记住参数
  20. 函数尽量单一职责,不用考虑多次查询数据库的问题
  21. 能使用array_map、array_filter、array_reduce、array_walk等函数来处理数组或构建数据就不要使用foreach