1://接口路由 Route::group([ 'namespace' => 'Example', ], function() { Route::any('menu', 'MenusController@getSidebarTree'); Route::get('group_permissions', 'PermissionsController@groupPermissions'); }); 2://控制器 //接收参数的类 use IlluminateHttpRequest; //接收参数的类 use IlluminateSupportFacadesInput; //基础控制器 use AppHttpControllersController; //验证规则类 use IlluminateContractsValidationValidator; //hash加密 use IlluminateSupportFacadesHash; //session的类 use SymfonyComponentHttpFoundationSessionSession;
//配置文件类 use IlluminateSupportFacadesConfig;
3://获取用户提交的数据 Request::get(); Request::post(); //所有输入,表单文件什么的所有的数据 Request::all(); //query和get一样,query只接收url地址栏的参数,它的选择范围更小 Request::query(); //判断值是否为空 Request::has($key); //判断键时候存在 Request::exists($key); //只接收这俩值 Request::only('key1','key2'); //接收除了这俩以外的值 Request::except('key1','key2'); //当前的域名。http://127.0.0.1:8885/api/privilegeList Request::url(); //http://127.0.0.1:8885/api/privilegeList?a=1 Request::fullurl(); 4://接收数据并把数据存到session Request::flash(); //调用上面的参数.不带参数就显示所有的 Request::old($key); //只存某个值 Request::flashOnly(); //除了某个值,其他都存 Request::flashExcept();
5://接收所有的文件,加$key接收单个文件 Request::file(); Request::hasFile();//true/false //获取文件的大小 Request::file($key)->getSize(); //客户端时文件的名称例如123.jpg Request::file($key)->getClientOriginalName(); //123 Request::file($key)->getClientOriginalExtension();//jpg 6://session Session::put($key,$val); //获取所有的session值 Session::all(); //删除session Session::forget($key); //拿出来一次就删除 Session::pull($key); 7://数据的验证 $rq = Request::all(); $validator = Validator::make($rq,[ 'usename'=>'required | min:4 |max:16|unique:nf_pivilege',//必须,最小长度4,最大16位,在nf_privilege表唯一存在 // 'usename'=>'required | between:4,16',//必须,最小长度4,最大16位 'phone'=>'numeric | required',//必须数字,必须有值 'password'=>'required|between:6,255' ]); if($validator->fails()){ return $validator->errors(); } return '验证成功'; 8://哈希(Hash) $password = Request::get('password'); //hash加密 $hashedpassword = Hash::make($password); //比对上次我们存的hash是否正确 if(Hash::check($key1,$value)){ } 9://函数的应用 $array = [1,2,3]; //返回第一个 $data = head($array);//1 //只返回某一部分 $array = [ 'name'=>123, 'age'=>23, 'ab'=>43 ]; $data = array_only($array, array('name','age'));//123,23 //按条件返回 $array = [ 'name'=>123, 'age'=>23, 'ab'=>43 ]; $data = array_first($array,function($key,$value){ return $value>30; });//43,123 //按条件返回 $array = [ 'name'=>123, 'age'=>23, 'ab'=>43 ]; $data = array_add($array,'job','work');//43,123 //返回 $array = [ 'name'=>123, 'age'=>23, 'ab'=>43, 'job'=>'work' ]; array_where($array, $callback); array_flatten($array); array_fill($start_index, $num, $data); last($array); 10://路径的帮助函数 app_path();//项目绝对路径 config_path();//配置文件的路径 public_path();//public路径 storage_path();//过程文件的储存目录 11://字符串的帮助函数 str_plural($value);//apple -> apples.把单数变成复数 starts_with($value, 'a');//判断字符串是否以a开头 ends_with($haystack, 'b');//是否以b结束 camel_case($value);//转位驼峰命名法 hello_world -> helloWorld class_basename($class);//只取最后的命名空间 App est->test str_limit($value, 3);//abcderf->abc.... str_is('ab*', $value);//$value是否以ab开头
//modules------------------------------------------------------ 1://基础模型类 use IlluminateDatabaseEloquentModel; //数据库类 use IlluminateSupportFacadesDB; 2属性类型 //表名 protected $table = "nf_privilege"; //允许被重写的字段,这个一般不用写,只需要写下面的这个就行了 protected $fillable = ['nf_name']; //不允许被重写的字段 protected $guarded = ['id']; //主键id protected $primary_key = 'id'; //需要隐藏的字段 protected $hidden = ['nf_controller']; //不检查时间 public $timestamps = false; public function getAll() { // $data = DB::select('select * from nf_privilege'); //取出说有的数据 // $data = $this->all()/get()一样; // //按照主键id找数据 // $data = $this->find(1); $this->where('id','>=',3)->get(); return $data; } public function create() { //添加1 // $this->nf_name = '123'; // $this->nf_module = '234'; // $this->nf_parentId =1; // $this->save(); //添加2 $data = array('nf_module'=>'12','nf_name'=>'234'); $this->fill($data); $this->save(); } public function update() { //找到这条数据,更新单条 $res = $this->find(5); $res->nf_name = '654'; $res->nf_module = '7890'; $res->save(); //更新多条 $ress = $this->where('nf_parentId','>',3); ///----- // $ress->nf_name = '0987'; // $ress->save(); //第二种 $ress->update(array('nf_name'=>'32')); } public function del() { $res = $this->find(4); $res->delete(); }