微信扫一扫打赏支持

legend3---4、lavarel中session使用注意

legend3---4、lavarel中session使用注意

一、总结

一句话总结:

session('key',$value)不是存值,是设置默认值,session(['key'=>$value])才是
全局辅助函数 Session
你也可以使用全局的 PHP 辅助函数 session 来获取和存储 Session 数据。 使用单个字符串类型的值作为参数调用辅助函数 session 时,它会返回该字该符串对应的 Session 键的值。当使用一个键值对数组作为参数调用辅助函数 session 时,传入的键值将会存储在 Session 中:

Route::get('home', function () {
    // 获取 session 中的一条数据...
    $value = session('key');

    // 指定一个默认值...
    $value = session('key', 'default');

    // 在 Session 中存储一条数据...
    session(['key' => 'value']);
});

 

 

 

1、laravel验证?

$validator = \Validator::make($dataIn,$rules,$message);
if ($validator->passes()) {
  //步骤一:验证输入的数据
  $rules=[
      'u_phone' => 'required|unique:user|between:10,15',
      'u_password' => 'required|same:u_re_password|between:6,20',
      'u_email' => 'required|email',
  ];
  $message=[
      "u_phone.required"=>"请输入大陆手机号",
      "u_phone.unique"=>"用户名已存在",
      "u_phone.between"=>"手机号码位数不对",
      "u_password.required"=>"请输入密码",
      "u_password.same"=>"两次密码不一致",
      "u_password.between"=>"密码长度不在6-20位之间",
      "u_email.required"=>"请输入邮箱",
  ];
  $validator = \Validator::make($dataIn,$rules,$message);
  if ($validator->passes()) {
      unset($dataIn['_token']);
      unset($dataIn['u_re_password']);
      unset($dataIn['captcha']);
      unset($dataIn['phone_code']);
      $dataIn['u_password']=\Crypt::encrypt($dataIn['u_password']);
      $dataIn['u_create_at']=time();
      $dataIn['u_update_at']=time();
      if (\DB::table("user")->insert($dataIn)) {
          return 1;
      }else{
          return 0;
      }
  }else{
      // 具体查看laravel的核心类
      return $validator->getMessageBag()->getMessages();
  }

 

 

2、lavarel中的重定向(back()方法和redirect()方法)传递数据的原理是什么:return back()->withInput()->with('error','验证码错误!');?

使用闪存的 Session 数据
重定向并使用闪存的 Session 数据
通常,重定向到新的 URL 的同时会将 数据闪存到 Session。并且成功执行将信息闪存到 Seesion 后才算完成此操作。方便起见,你可以创建一个 RedirectResponse 的实例并链式调用 with 方法将数据闪存在 Session 中:

Route::post('user/profile', function () {
    // 更新用户的信息...

    return redirect('dashboard')->with('status', 'Profile updated!');
});
用户重定向后,你可以从 session 中读取闪存的信息。例如,使用 Blade 语法:

@if (session('status'))
    <div class="alert alert-success">
        {{ session('status') }}
    </div>
@endif

 

 

3、lavarel如何验证是否为邮箱?

手册很详细:'u_email' => 'required|email',
  $rules=[
      'u_phone' => 'required|unique:user|between:10,15',
      'u_password' => 'required|same:u_re_password|between:6,20',
      'u_email' => 'required|email',
  ];

 

 

4、lavarel如何验证是否为邮箱?

手册很详细:'u_email' => 'required|email',
  $rules=[
      'u_phone' => 'required|unique:user|between:10,15',
      'u_password' => 'required|same:u_re_password|between:6,20',
      'u_email' => 'required|email',
  ];

 

 

5、ajax比直接页面post提交的好处?

无论成功失败,还是跳转,都可以给用户提示信息:直接页面跳转麻烦

 

6、安装barryvdh/laravel-ide-helper:https://packagist.org中搜barryvdh?

1、composer require --dev barryvdh/laravel-ide-helper
2、Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
3、php artisan ide-helper:generate
1、Require this package with composer using the following command:
composer require --dev barryvdh/laravel-ide-helper
2、After updating composer, add the service provider to the providers array in config/app.php
Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
3、You can now re-generate the docs yourself (for future updates)
php artisan ide-helper:generate

 

7、lavarel视图中打印变量注意?

可以使用print_r,不要使用dd

 

8、vagrant帮助命令?

查看vagrant帮助命令(比如有哪些命令):vagrant
查看vagrant up帮助命令(比如有哪些参数):vagrant up -h(这是在vagrant的帮助命令中知道)

 

9、hosts文件不能被修改的原因(C:\Windows\System32\drivers\etc\hosts)?

hosts文件或者上级目录被设置成了只读

 

二、内容在总结中

 

 

 

 

 
posted @ 2019-09-23 07:36  范仁义  阅读(656)  评论(0编辑  收藏  举报