О нас
Разработчикам
Заметки
Переводчик
Транслитератор
Сравнить текст
Генератор пароля
Ip и информация
Декодировать JSON
Локация
О нас
Разработчикам
Заметки
Переводчик
Транслитератор
Сравнить текст
Генератор пароля
Ip и информация
Декодировать JSON
Локация
Laravel request
us.content
<?php // Данные запроса в массиве $request->all(); // В любом контроллере получения ip или request()->ip() public function index(Request $request) { echo $request->ip(); } public function getIndex() {} // Принимает get запросы на контроллер, который прописан в маршрутах public function postIndex() {} // Принимает post запросы на контроллер, который прописан в маршрутах $request->query('key'); // Возвращает $_GET['key'], если без параметра, то вернёт все get параметры $request->input('name'); // Получаю name из POST $request->input('tttttt', 'Default'); // Если tttttt не существует, то вернётся значение по-умолчанию if ($request->has('name')) // Если name существует и не пуста, то... if ($request->exists('name')) // Если name существует и может быть пуста, то... $request->only('name', 'email'); // Вернёт только name и email $request->except('tel', 'company'); // Вернёт всё кроме tel и company $request->root(); // Домен сайта $request->path(); // Путь, без URL $request->url(); // Полный путь, без get параметров $request->fullUrl(); // Полный путь if ($request->is('contact-us/*')) // Если соответствует путь этому contact-us, где * это любое значение. Провернка главной if ($request->is('/')) $request->route()->getName(); // Имя маршрута request()->route()->getActionName(); // Тоже что __METHOD__ request()->route()->getActionMethod(); // Метод или action запроса request()->getMethod(); // Метод запроса: get, post.. $request->header(); // Возвращает заголовки, или передать параметром какой заголовок нужен $request->server(); // Возвращает массив аналогичный $_SERVER $request->segments(); // Сегменты запроса, соответственно segment получить какой нужно $request->method(); // Каким методом пришёл запрос $request->wantsJson(); // Если JSON $request->ajax(); // Если Ajax if ($request->isMethod('post')) // Если метод post, то... { $request->offsetUnset('password_confirmation'); // Удалить _token // Обработать запрос $request->merge([ 'password' => Hash::make($request->password), // Захэшировать пароль 'accept' => $request->accept ? '1' : '0', // Сохранить чекбокс как 1 'ip' => $request->ip(), // Добавить поле IP ]); // Что-то делаю... // Validation $request->file('img'); // Данные загружаемого файла $request->isFile('img'); // Есть ли файл в объекте return redirect()->route('contact-us')->withInput(); // Редирект, чтобы решить проблему F5 и сразу в сессию передаются все данные $request->flash(); // Сохраняется в сессии все данные $request->old('name'); // Возвращает сохранённый в сессии name $request->flush(); // Очищает данные из сессии $request->flashOnly('name', 'email'); // Сохраняется в сессии только name и email $request->flashExcept('tel', 'company'); // Сохраняется в сессии кроме tel и company // {{ old('name') }} Вывести в вид, сохранённые в сессии данные return redirect()->route('contact-us'); // Редирект, чтобы решить проблему F5 } // Валидация $rules = [ 'id' => 'required|integer', // Обязательное поле, целочисленное число 'name' => 'required|string|max:190', // Обязательное поле, строка, максимум 190 символов 'tel' => 'required|string|max:190', 'email' => 'required|string|email|max:190', // Добавляется проверка не Email 'message' => 'required', 'string', 'accept' => 'accepted', // Проверка чексокса 'g-recaptcha-response' => 'required', // Любое поле можно сделать обязательным 'parent_id' => 'nullable|integer', // Не обязательное поле, но если есть, то должно быть число 'img' => 'nullable|mimes:jpg,jpeg,png,gif|max:2000', // Не обязательное поле, но если есть, проверка на разрешение и размер файла ]; $request->validate($rules); или $this->validate($request, $rules); // В ручную use Illuminate\Support\Facades\Validator; $validator = Validator::make($request->all(), $rules); $errors = $validator->getMessageBag()->toArray(); // Отдать данные объект или массив $data = collect($data); $data->forget('id'); $data->forget('created_at'); $data->forget('updated_at'); return response()->json($data, 200, ['Content-Type' => 'application/json']); // Route resource names name.index name name.store name/store name.create name/create name.update name/2/update name.edit name/2/edit name.destroy name/2/destroy
Список