//配置文件类
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();
}