Laravel 的数据库操作基于 Eloquent ORM,在插入数据时有以下几种方式,返回结果也不会不同:
1、insert 插入后会返回 true or false;
2、create 插入成功后会返回插入的数据元;
3、firstOrCreate 插入成功后会返回插入的数据元,不过若存在时间戳,则会将时间戳转换为4个字符的字符串(int 为4个字符),仍需解决;
4、firstOrNew 插入后还需添加 save 才会保证插入成功,成功也返回插入的数据元;
5、new 一个 model,以对象的形式操作,最后 save,如
$flight = new Flight; $flight->name = $request->name; $flight->save();
总结:如果只需插入数据而不用获取插入后的结果,insert 即可;create、firstOrCreate、firstOrNew 这几种形式需对 model 的全部字段填入 fillable,才能保证插入完整,不然有些就会以默认值存在,不过默认值的话有时也比较方便;