#php #laravel
#php #laravel
Вопрос:
У меня есть следующий код, как показано ниже:
public function __invoke(Request $request)
{
$this->isRequestInvalid($request);
$result = $request->ssid;
return $result;
}
public function isRequestInvalid($request)
{
$validator = Validator::make($request->all(), [
'ssid' => 'required',
'sid' => 'required',
'receiptinfo' => 'required',
]);
if ($validator->fails()) {
return "Something";
}
return true;
}
Я думаю, если функция isRequestInvalid($request) — это работа. это должно возвращать «Что-то»; Но, почему мой код, выполняющий даже функцию, был вызван и возвращен?
Примечание: я не хочу добавлять условие if внутри __invoke()
Ответ №1:
Поскольку у вас нет ничего, что использует или хранит возвращаемое значение из $this->isRequestInvalid($request);
, вы можете вернуть false при сбое проверки
if ($validator->fails()) {
return false;
}
и выполните обработку в __invoke
if (!$this->isRequestInvalid($request);) {
return "Something";
}