PHP: Как я могу определить, имеет ли переменная значение между двумя разными значениями констант? - PullRequest
24 голосов
/ 14 апреля 2011

Как определить с помощью кода PHP, что, например, у меня есть переменная со значением

  • от 1 до 10 или
  • от 20 до 40?

Ответы [ 8 ]

57 голосов
/ 14 апреля 2011
if (($value > 1 && $value < 10) || ($value > 20 && $value < 40))
18 голосов
/ 14 апреля 2011

Вы имеете в виду как:

$val1 = rand( 1, 10 ); // gives one integer between 1 and 10
$val2 = rand( 20, 40 ) ; // gives one integer between 20 and 40

или, возможно:

$range = range( 1, 10 ); // gives array( 1, 2, ..., 10 );
$range2 = range( 20, 40 ); // gives array( 20, 21, ..., 40 );

или, может быть:

$truth1 = $val >= 1 && $val <= 10; // true if 1 <= x <= 10
$truth2 = $val >= 20 && $val <= 40; // true if 20 <= x <= 40

предположим, что вы хотели:

$in_range = ( $val > 1 && $val < 10 ) || ( $val > 20 && $val < 40 ); // true if 1 < x < 10 OR 20 < x < 40
7 голосов
/ 14 апреля 2011
if (($value >= 1 && $value <= 10) || ($value >= 20 && $value <= 40)) {
   // A value between 1 to 10, or 20 to 40.
}
4 голосов
/ 03 января 2019

Вы можете сделать это:

if(in_array($value, range(1, 10)) || in_array($value, range(20, 40))) {
   # enter code here
}
3 голосов
/ 14 апреля 2011

Догадываясь по тегу 'операнд', хотите проверить значение?

$myValue = 5;
$minValue = 1;
$maxValue = 10;

if ($myValue >= $minValue && $myValue <= $maxValue) { 
  //do something
}
0 голосов
/ 27 сентября 2018

Попробуйте

if (($val >= 1 && $val <= 10) || ($val >= 20 && $val <= 40))

This will return the value between 1 to 10 & 20 to 40.
0 голосов
/ 15 февраля 2018

Если вы просто хотите проверить, находится ли значение в диапазоне, используйте это:

   MIN_VALUE = 1;
   MAX_VALUE = 100;
   $customValue = min(MAX_VALUE,max(MIN_VALUE,$customValue)));
0 голосов
/ 14 апреля 2011

Случайное значение?

Если вы хотите случайное значение, попробуйте

<?php
$value = mt_rand($min, $max);

mt_rand () будет работать немного более случайным образом, если вы используете много случайных чисел в строке,или если вы когда-нибудь сможете выполнить скрипт чаще, чем раз в секунду.В общем, вы должны использовать mt_rand () вместо rand (), если есть сомнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...