В чем разница между:PHP Разница между settype и (int)?
$int = (int)$int;
и
settype($int,"int");
?
Будут ли разные результаты?
В чем разница между:PHP Разница между settype и (int)?
$int = (int)$int;
и
settype($int,"int");
?
Будут ли разные результаты?
Да, они разные.
Тип литья = Чтобы заставить переменную оценивать как определенный тип.
settype = Изменить тип переменной.
php
- язык слабого типа. Это действительно означает, что компилятор может определить тип переменной. Это делает
$var="string";
$var=5;
С литья вы можете сделать:
$var=(int)$var; // disaster if $var were "string"
Кастинг переменной силы типа появляться, как будто это что типа.
Однако SetType фактически изменяет тип переменной для остальной части прототипа script.The является:
bool settype (mixed &$var , string $type)
Однако, с settype
у вас есть некоторые проверки ошибок:
Например, вы можете сделать
if (settype($var,"int")) // You have some error checking in code.
// for php version older than 4.2.2 "integer"
{
//do something
}
насколько я знаю, SetType изменяет тип переменной (документация говорит: «переменная быть преобразован. "). (int) выдает var. settype также может возвращать false как некоторые случаи ...