РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
954 of 1392 menu

Функция csrf_token

Функция csrf_token возвращает строку с CSRF-токеном, который автоматически генерируется для текущей сессии пользователя. Этот токен используется для проверки подлинности запросов, отправляемых через формы, и защиты от CSRF-атак. Функция не принимает никаких параметров и всегда возвращает строку.

Синтаксис

<?php $token = csrf_token(); ?>

Пример

Получим CSRF-токен и выведем его на экран:

<?php $token = csrf_token(); echo $token; ?>

Результат выполнения кода:

"a1b2c3d4e5f6g7h8i9j0"

Пример

Используем функцию csrf_token в Blade-шаблоне для скрытого поля формы:

<form method="POST" action="/submit"> @csrf <input type="hidden" name="_token" value="{{ csrf_token() }}"> <input type="text" name="name"> <button type="submit">Submit</button> </form>

Результат выполнения кода:

<form method="POST" action="/submit"> <input type="hidden" name="_token" value="a1b2c3d4e5f6g7h8i9j0"> <input type="text" name="name"> <button type="submit">Submit</button> </form>

Пример

Сравним CSRF-токен с сохранённым в сессии для проверки валидности запроса:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Session; class FormController extends Controller { public function submit(Request $request) { $token = $request->input('_token'); $sessionToken = csrf_token(); if ($token === $sessionToken) { echo "Token is valid"; } else { echo "Token is invalid"; } } } ?>

Результат выполнения кода при валидном токене:

"Token is valid"

Смотрите также

  • функция csrf_field,
    которая генерирует HTML-поле с CSRF-токеном
  • функция method_field,
    которая генерирует скрытое поле для указания HTTP-метода
  • функция old,
    которая возвращает старое значение поля формы
  • функция session,
    которая позволяет работать с данными сессии
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить