PHP - intval () с аргументами min, max - PullRequest
1 голос
/ 02 февраля 2011
function intvalminmax($whatever, $min = 1, $max = 100){
  if(intval($whatever) < $min) return 1;
  elseif(intval($whatever) > $max) return $max;
  return intval($whatever);
}

есть ли встроенная функция PHP, которая делает что-то подобное?

Ответы [ 4 ]

8 голосов
/ 02 февраля 2011

нет, но вы можете использовать min(max(intval($whatever), $min), $max) вместо.

3 голосов
/ 02 февраля 2011

Вы можете объединить min и max:

max($min, min(intval($val), $max))
2 голосов
/ 02 февраля 2011

Ответ на этот вопрос требует знания всех функций PHP, но я не знаю ни о каких. Тем не менее, вы можете сделать ваш код проще:

function($min, $max, $val) { return min($max, max($min, intval($val))); }
1 голос
/ 02 февраля 2011

Нет, но можно записать в более короткой форме:

function xyz( $v, $min, $max ){
    return min(max( (int)$min, (int)$x), (int)$max);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...