Какая разница между
$int = (int) $int
и
$int = intval($int);
Вроде одно и тоже, но почему отличаются по написанию?
int быстрее, и насколько мне известно не допускает отрицательных значений
так и intval не допускает же кроме число и минуса.
какую использовать оптимально?
$int = (int) $int; <- запись проще. Вернет ноль в первом и во втором случае, если переменная не целое число) И наверное соглашусь со вторым постом. Где - то в мануале по php написано так: чем меньше кода, тем быстрее он обрабатывается)
Razor, ну так проверка идет на целое число, а оно может быть отрицательным. Ставь нужное условие в коде и все дела)
Чтобы число было положительным, можно вернуть его модуль abs()