Назад к вопросам
JuniorТеорияЧасто
Что произойдёт при запуске программы?
<?php
function square(int $n): int
{
return $n * $n;
}
echo square('4'), ' ', square(2.0), "\n";
echo square('four'), "\n";16 4, затем TypeError на 'four'
- Ждать
TypeErrorуже на'4': безstrict_typesPHP приводит числовую строку кint, поэтомуsquare('4')возвращает16. - Ждать, что
'four'станет0: параметр с типомintприводит только строку с числом, а на любой другой строке вызов бросаетTypeError.
- Что выведет
square(2.5)и какое сообщение появится вместе с результатом? - Как
declare(strict_types=1)меняет вызовsquare('4')?