“系统服务”的版本间的差异

来自tomtalk
跳转至: 导航搜索
session
Tom讨论 | 贡献
表单验证
第88行: 第88行:
  
 
==表单验证==
 
==表单验证==
 +
 +
<source lang='php'>
 +
function input()
 +
{
 +
    return view('input');
 +
}
 +
 +
function store(Request $request)
 +
{
 +
    $request->flash();
 +
 +
    $this->validate($request, [
 +
        'name' => 'required|max:5',
 +
        'old' => 'required',
 +
    ], [
 +
        'name.required' => '请填写姓名',
 +
        'name.max' => '姓名不能超过:max个字符',
 +
        'old.required' => '我们需要知道你的年龄',
 +
    ]);
 +
 +
    return 'validation is OK!';
 +
}
 +
</source>

2016年9月18日 (日) 07:43的版本

事件

Laravel事件提供了简单的侦听器实现,允许你订阅和监听事件,事件类通常被保存在app/Events目录下,而它们的侦听器被保存在app/Listeners目录下。

错误与日志

//.env
APP_DEBUG=true
 
// bootstrap/app.php
$app->withFacades();
 
//引用Log
use Log;
 
// 8个日志级别
Log::emergency($error);
Log::alert($error);
Log::critical($error);
Log::error($error);
Log::warning($error);
Log::notice($error);
Log::info($error);
Log::debug($error);

测试

public function testTom()
{
    $response = $this->call('get', '/userInfo');
    $result = json_decode($response->original);
 
    $this->assertEquals(
        'Tom', $result->name
    );
}

缓存

use Cache;
 
if (Cache::has('key')) {
    $coupon_total = Cache::get('key');
} else {
    $rs = Coupon_api::instance()->total();
 
    if ($rs['status']) {
        $coupon_total = $rs['data']['total_amount'];
    }
 
    Cache::put('key', $coupon_total, 5); //5 minutes
}

session

session使用
use Illuminate\Http\Request;
 
function blade(Request $request)
{
    //赋值
    session(['name'=> 'Tom']);
    $request->session()->put('name', 'Tom');
    $request->session()->push('students', 'Tom');
 
    //取值
    $name = session('name');
    $request->session()->get('students');
}


Session store not set on request.
// Kernel.php添加中间件
protected $middleware = [
    //...
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class,
];

表单验证

function input()
{
    return view('input');
}
 
function store(Request $request)
{
    $request->flash();
 
    $this->validate($request, [
        'name' => 'required|max:5',
        'old' => 'required',
    ], [
        'name.required' => '请填写姓名',
        'name.max' => '姓名不能超过:max个字符',
        'old.required' => '我们需要知道你的年龄',
    ]);
 
    return 'validation is OK!';
}