Как вы проверяете, что массив содержит только значения, которые являются целыми числами?
Я хотел бы иметь возможность проверять массив и заканчивать логическим значением true
, если массив содержит только целые числа и false
, если в массиве есть другие символы. Я знаю, что могу перебирать массив и проверять каждый элемент отдельно и возвращать true
или false
в зависимости от наличия нечисловых данных:
Например:
$only_integers = array(1,2,3,4,5,6,7,8,9,10);
$letters_and_numbers = array('a',1,'b',2,'c',3);
function arrayHasOnlyInts($array)
{
foreach ($array as $value)
{
if (!is_int($value)) // there are several ways to do this
{
return false;
}
}
return true;
}
$has_only_ints = arrayHasOnlyInts($only_integers ); // true
$has_only_ints = arrayHasOnlyInts($letters_and_numbers ); // false
Но есть ли более краткий способ сделать это, используя встроенную функциональность PHP, о которой я не думал?
Примечание. Для моей текущей задачи мне нужно будет только проверить одномерные массивы. Но если есть решение, которое работает рекурсивно, я был бы благодарен за это.