$a = 101;
if (isset($a) && is_int($a) && in_array($a, range(1, 100))) {
echo "TRUE";
} else echo "FALSE";
Почему это условие возвращает FALSE, как это должно быть, а это, если:Странное поведение в состоянии IF
if (isset($argv[1]) && is_int($argv[1]) && in_array($argv[1], range(1, 100))) {
echo "TRUE";
} else echo "FALSE";
возвращает FALSE, где также переданное значение, как первый параметр 50, который находится в диапазоне ??? PHP-CLI является 7.0.9-TS-VC14-x64
Заранее спасибо
Возможно, этот параметр имеет значение '' 50 "', поэтому имеет тип _string_? – arkascha
Или, может быть, вы действительно хотите использовать '$ argv [0]' вместо этого, поскольку вы ссылаетесь на него как на аргумент _first_? – arkascha
Что содержит '$ argv'? – Tom