1.首先通过php artisan make:console 文件名 --command=命令名,这时就会在app/Console/Commands目录下生成一个文件。再在app/Console下面的Kernel的$commands下面添加新加的类。
2.编写文件内容,$signature和$description分别是命令名和描述,handle方法就是调用命令时执行的方法。
3.参数的传递和选项
编写signature指定参数 {user?},可选
选项 {--选项名} ,带了为true
protected $signature = 'hello:test2{id}{--y}';4.获取输入
使用argument和option方法可以实现参数了选项值
$id = $this->argument("id");
$isCountId = $this->option('y');5.在handle方法中可以用info,comment,question,error来输出提示信息,confirm()让用户确认,table(头,身体)表格布局。
没有定义命名空间的,就是在全局空间中。使用 反斜杠+方法() 调用
//例如
\Request::get('name');
DB::table("student as a")->...平常数据库中不用as关键字的,但是不用就出错了,所以还是用吧!
$table->shareLock();//共享锁避免选择行被修改 $table->lockForUpdate();//避免选择的行被其他共享锁修改或删除
$db = DB::table('user');
$db->orderBy(字段,"desc");
$db->groupBy(字段)->having('参数','条件',数值)->get();//havingRaw(原生条件)
$db->skip(3)->take(5);//限定,跳过3条取5条
$db = DB:table("users");
$db->insert(数组字段对值);
$db->insertGetId(数组) ;//这个会返回插入后的id值
$db->where()->update(数组字段对值);
$db->where()->increment(字段,增加的值);
$db->where()->decrement(字段,减少的值);
$db->where()->delete();
$db->truncate(); //删除所有重置id
where(字段,判断条件,值)
判断条件有= <> like等,相等的话可以省略中间参数,只需两个参数
还有orWhere(),whereBetween(),whereNotBetween(),whereIn/whereNotIn(),whereNull(),whereNotNull(),whereExists(),whereRaw()等
$message= $validator->errors()
$message->first('email');//获取指定字段的第一条信息
$message->get('email');//获取某个字段的所有信息
$message->all();//获取所有错误信息
$message->has('email');//某字段是否有错误信息
php artisan make:request StoreBlogPostRequest
生成请求类在app/Http/Requests,添加验证规则到rules方法
public function rules(){
return [验证数组]
}使用控制器的方法的传入请求依赖改为
StoreBlogPostRrquest $request
它会在控制器方法调用前进行调用
use Validator;//引入Validator验证者
$rule=[字段=>规则,......];
$message=[字段.规则=>要提示的信息];
$validator = Validator::make($request->all(),$rule,$message);
if($validator->fails()){
return back()->withErrors($validator)->withInput();
}这里要使用back(),不能用redirect(),不然视图中的$errors就不能用了。