Laravel一些实用的小技巧

  1. 严格遵守 psr 规范

记不住的话,请至少遵守如下的内容

逗号前面无空格,逗号后面留一个空格,不要留多了。

左小括号后,右小括号前不要有空格。
上下内容如果没有必要的关联关系,请空一行。

各种运算符的左右各留一个空格。

优先判断错误,即非正常结果的处理方法优先写在上面。正常流程的执行写在最后。

DB 方法不能直接调用 save()

以下内容针对 laravel 的 ORM 而谈论的,如有不合适的地方,欢迎指出,谢谢

:) 2. 查询(1)

查询中的 get 与 all 方法返回的是集合。
当没有数据时,返回的是空集合,集合可以在任何时候调用 toArray 方法,如果查询到的结果为空,得到的是 [],可以用 empty() 方法判断是否有数据
  1. 查询(2)

    查询中的 first 方法与添加数据的 create、insert 方法,成功返回的是模。 创建、插入成功返回的是创建插入的那条数据的模型。 first 如果查不到数据,返回的是 null, 可用 empty 判断。 创建和插入,如果失败,会报错(当传入的字段与数据库对不上时)。 如果传入的字段与数据库字段一致,插入或创建失败会返回 false 判断是否插入成功,用 (! $result) 判断,(感叹号和 $result)间保留一个空格。判断完成后才可调用 toArray。

  2. 更新与删除

    update 和 delete,destroy 方法,返回的是影响行数。 在 laravel 中,update 方法永远返回大于 1 的行数,因为 updated_at 字段总是会被更新。 如果要避免这种情况,请在模型中关闭 laravel 的自动维护字段的属性。 destory 和 delete 返回的是影响行数,即失败为 0,成功为删除行数。

  3. 数据解码

    json_decode($json, 1); 方法返回的是 null 或数组,判断是否 json_decode() 成功,用 empty 判断。

  4. 自定义函数

    对于自己的方法,清楚地在注释中标注出所有的返回类型,针对每一种类型进行判断处理。

判断时,使用 === 进行严格判断。 除了非必要情况,请使用严格 === 进行判断,如果需要使用不等于判断, 请使用 !== 。 严禁使用非严格模式的 != 进行判断 7. foreach

foreach() 时,一定要确保能进行,即

foreach($people as $person) {
 $name[] = $person['name'];
}
var_dump($name);

中的第一个变量 $people 有数据,有数据才让进行 foreach() 。否则程序可能因无数据而报错。

处理方式可进行如下改进处理

$name = [];

if ($people) { foreach($people as $person) { $name[] = $person['name']; } } var_dump($name);

云海天博客
请先登录后发表评论
  • latest comments
  • 总共0条评论