接值封装
helpers.php
/**
* 获取POST请求的数据
* @param $params
* @param null $request
* @param bool $suffix
* @return array
*/
function postMore($params, $request = null, $suffix = false): array
{
if ($request === null) $request = app('request');
$p = [];
$i = 0;
foreach ($params as $param) {
if (!is_array($param)) {
$p[$suffix == true ? $i++ : $param] = $request->input($param);
} else {
if (!isset($param[1])) $param[1] = null;
if (!isset($param[2])) $param[2] = '';
if (is_array($param[0])) {
$name = is_array($param[1]) ? $param[0][0] . '/a' : $param[0][0] . '/' . $param[0][1];
$keyName = $param[0][0];
} else {
$name = is_array($param[1]) ? $param[0] . '/a' : $param[0];
$keyName = $param[0];
}
$p[$suffix == true ? $i++ : (isset($param[3]) ? $param[3] : $keyName)] = $request->input($name, $param[1], $param[2]);
}
}
return $p;
}
/**
* 获取请求的数据
* @param $params
* @param null $request
* @param bool $suffix
* @return array
*/
function getMore($params, $request = null, $suffix = false): array
{
if ($request === null) $request = app('request');
$p = [];
$i = 0;
foreach ($params as $param) {
if (!is_array($param)) {
$p[$suffix == true ? $i++ : $param] = $request->input($param);
} else {
if (!isset($param[1])) $param[1] = null;
if (!isset($param[2])) $param[2] = '';
if (is_array($param[0])) {
$name = is_array($param[1]) ? $param[0][0] . '/a' : $param[0][0] . '/' . $param[0][1];
$keyName = $param[0][0];
} else {
$name = is_array($param[1]) ? $param[0] . '/a' : $param[0];
$keyName = $param[0];
}
$p[$suffix == true ? $i++ : (isset($param[3]) ? $param[3] : $keyName)] = $request->input($name, $param[1], $param[2]);
}
}
return $p;
第一种
//常见的
[$province_id, $city_id, $school_id, $grade, $class, $name, $sex, $born] = postMore([['province_id', 0], ['city_id', 0], ['school_id', ''], ['grade', ''], ['class', 0], ['name', 0], ['sex', 1], ['born', 0]], $request, true);
$request->validate([
'province_id' => ['required'],
'city_id' => ['required'],
'school_id' => ['required'],
'grade' => ['required'],
'class' => ['required'],
'name' => ['required'],
'sex' => ['required'],
'born' => ['required'],
]);
第二种
//创建类
<?php
namespace App\Http\Requests\Login;
use Illuminate\Foundation\Http\FormRequest;
class LoginClassRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'top_id' => 'integer|required|min:1',
];
}
public function messages()
{
return [
'top_id.required' => 'top_id必须填写',
];
}
}
随后注入到方法就ok了
运用的是依赖注入
public function Massage(LoginClassRequest $request)
{
}