PHP проверка на тип данных

В этой статье вы узнаете как и зачем проверяют на тип данных (как правило в переменной) в PHP.

Как проверить тип переменной в PHP

В ваших скриптах может возникнуть необходимость на дополнительную проверку и иногда, это проверка на какой-то определенный тип. Чаще всего, смотрим, есть ли хоть какого-то значение в переменной:

<?
if (!empty($var)):
  // code here
endif;

В этом языке программирования типизацию называют динамической (также, можно встретить термин “слабая типизация“). Это означает, что строка может стать числом, если мы применим оператор сложения.
За это, кстати говоря, у PHP так много ненавистников 🙂 .

Вернемся к нашей теме. Чтобы проверить на типы данных существуют следующие проверки:

if (is_array($arr)) {
 // переменная является массивом
}

/*
is_bool() - Проверяем, является ли переменная булевой
is_int() - Проверяем, является ли переменная целым числом
is_numeric() - Проверяем, является ли переменная числом или строкой, содержащей число
is_float() - Проверим, является ли переменная числом с плавающей точкой
is_string() - Проверим, является ли переменная строкой
is_object() - Проверим, является ли переменная объектом

*/

Можем проверить на массив, на тип булево (true или false), число с плавающей точкой, обычное число, строку и объект.

Эти проверки помогут вам в ваших скриптах. Например, стоит задача: если приходит целое число, то мы ничего не делаем,  а если с плавающей точкой то округляем в какую-то сторону на “столько-то” знаков.

Также, бывают случаи, когда в переменную может записываться как число, так и массив, и нам нужно предусмотреть все эти варианты.

Есть также проверка и для NULL:

is_null()

Вот такие вот простые и полезные вещи могут улучшить наш код 🙂

автор: Dmitriy

З 2011 року займаюся веб-розробкою. Зараз я – PHP Full Stack Developer.
Обговорити ваш проект, а також дізнатися більше про мене ви можете на цьому сайті:
dev.forwww.com

Email: dmitriyribka@gmail.com

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *