Метод getInt класса InputBag
Метод getInt класса InputBag извлекает параметр
из входных данных запроса и приводит его к целому числу.
Первым параметром передаётся имя ключа, вторым - значение
по умолчанию, которое возвращается, если ключ отсутствует
или не может быть преобразован в целое число.
Синтаксис
public function getInt(string $key, int $default = 0): int
Пример
Давайте получим параметр page из GET-запроса
и приведём его к целому числу:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
class ArticleController extends AbstractController
{
#[Route('/article', name: 'article_index')]
public function index(Request $request): Response
{
$page = $request->query->getInt('page', 1);
return new Response('page: ' . $page);
}
}
?>
Результат выполнения кода для адреса /article?page=5:
"page: 5"
Пример
Если параметр отсутствует, вернётся значение по умолчанию:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
class ArticleController extends AbstractController
{
#[Route('/article', name: 'article_index')]
public function index(Request $request): Response
{
$page = $request->query->getInt('page', 10);
return new Response('page: ' . $page);
}
}
?>
Результат выполнения кода для адреса /article:
"page: 10"
Пример
Давайте получим целое число из POST-запроса:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
class ArticleController extends AbstractController
{
#[Route('/article', name: 'article_index', methods: ['POST'])]
public function index(Request $request): Response
{
$count = $request->request->getInt('count', 0);
return new Response('count: ' . $count);
}
}
?>
Результат выполнения кода при передаче count=7:
"count: 7"
Смотрите также
-
класс
InputBag,
который хранит параметры запроса -
метод
get,
который возвращает значение параметра -
метод
getBoolean,
который приводит значение к булеву типу -
метод
getString,
который приводит значение к строке