Laravel框架
发现了一个不错的入门文档:
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