Метод getBoolean класса ParameterBag
Метод getBoolean класса ParameterBag возвращает значение параметра,
приведённое к булеву типу. Первым параметром передаётся имя ключа,
вторым необязательным параметром - значение по умолчанию, которое
будет возвращено, если ключ отсутствует в контейнере.
Метод преобразует строковые значения 'true', '1',
'on' и 'yes' в true, а все остальные строки -
в false. Числовые значения 1 и 0 также
преобразуются в true и false соответственно.
Синтаксис
public function getBoolean(string $key, bool $default = false): bool
Пример
Давайте создадим объект ParameterBag с несколькими параметрами
и получим булево значение для ключа 'active':
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentHttpFoundationParameterBag;
class ArticleController extends AbstractController
{
public function index(): Response
{
$bag = new ParameterBag([
'active' => 'true',
'published' => '0',
'visible' => 'on'
]);
$res = $bag->getBoolean('active');
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
true
Пример
Давайте получим булево значение для ключа 'published',
которое содержит строку '0':
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentHttpFoundationParameterBag;
class ArticleController extends AbstractController
{
public function index(): Response
{
$bag = new ParameterBag([
'active' => 'true',
'published' => '0',
'visible' => 'on'
]);
$res = $bag->getBoolean('published');
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
false
Пример
Давайте передадим значение по умолчанию true для
отсутствующего ключа 'deleted':
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentHttpFoundationParameterBag;
class ArticleController extends AbstractController
{
public function index(): Response
{
$bag = new ParameterBag([
'active' => 'true',
'published' => '0'
]);
$res = $bag->getBoolean('deleted', true);
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
true
Пример
Давайте получим булево значение для ключа 'visible',
которое содержит строку 'on':
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentHttpFoundationParameterBag;
class ArticleController extends AbstractController
{
public function index(): Response
{
$bag = new ParameterBag([
'active' => 'true',
'published' => '0',
'visible' => 'on'
]);
$res = $bag->getBoolean('visible');
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
true
Смотрите также
-
класс
ParameterBag,
который хранит параметры запроса -
метод
get,
который возвращает значение параметра без приведения типа -
метод
getInt,
который возвращает значение параметра в виде целого числа -
метод
getString,
который возвращает значение параметра в виде строки