发现了一个不错的入门文档:

http://www.golaravel.com/post/2016-ban-laravel-xi-lie-ru-men-jiao-cheng-yi/

调试

  • log位置: laravel->storage->logs->laravel.log
  • 调试喷出内容并且终止程序: dd
  • 喷出内容, 不终止程序:
    • var_dump 带数据类型.
    • print_r
    • dump

数据库操作

批量插入

#据说可以save, 不是save是insert
$result_p2 = ItemTaobaoPackage::insert($re_item_taobao_package);# 这样就可以, 直接插数组.

批量更新

/**
* 此处有问题, 竟然不是软删除, 而是硬删除. 已经是软删除了, 是一个设置, 在db/base.php里面.
* 下面两句, 一句是批量删除, 一句是批量insert.
*/
$result_p = ItemTaobaoPackage::where('item_taobao_id', '=', $item_id)
  ->where('channel_id', '=', $channel_id)->delete();
$result_p2 = ItemTaobaoPackage::insert($re_item_taobao_package);
#上面这办法有点笨笨, 看看是否能直接更新.
//全表更新
$empty=[ 'free'=>0, ];
StockSku::query()->update($empty);
//批量更新就是把query换成where.

删除

CrawlerPhotoPre::where('_id', $r->_id)->delete();//crawler删除一个, 看到了吗? '=' 其实不需要写.
Crawler::find($r->_id)->delete();//crawler删除一个, 某些时候这句话不行, 要用上面一句, 神奇了.

逐一处理一张表中的每条数据

while ($r = CrawlerPhotoPre::first()) {
  CrawlerPhotoStr::create($datarr); //图片字符串增加一条.  todo 记录下news的id.
  CrawlerPhotoPre::where('_id', $r->_id)->delete();//crawler删除一个
}

得到结果集

$res=StockSkuBase::where('sku', $s)->get(); #得到所有结果.
$res=StockSkuBase::where('sku', $s)->first(); #得到一个结构.

更新字段

#对某个字段更新时, 如果更新值和字段本身值有关就不能先取出, 再更新, 因为这样就要锁住字段, 避免这个中间发生值得修改. 因此. 需要使用直接更新函数
DB::table('users')->increment('votes');
DB::table('users')->increment('votes', 5);
DB::table('users')->decrement('votes');
DB::table('users')->decrement('votes', 5);
http://www.golaravel.com/laravel/docs/5.1/queries/#updates