Чат веб-разработчиков
Типы данных в PHP

Типы данных в PHP

Всем привет! Сегодня поговорим о типах данных в PHP. Говоря о типах, мы подразумеваем типы каких-либо значений.

В сравнении с другими языками программирования, (например, C/C++/Java), в PHP одной и той же переменной можно присваивать значения разных типов. Поэтому в PHP типы следует относить не к переменной, а к значению. И говорить, например, что в переменной $var находится значение типа integer. Это называется "динамическая типизация" – одна и та же переменная может хранить значения разных типов. Согласитесь, это очень круто.

Давайте рассмотрим следующий код:

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

Здесь переменная $var на каждой строке меняет своё значение, при этом у этих значений разные типы. В первом случае – целое число (integer), во втором – строка (string), в третьем – дробное число (float).

Строки могут быть определены с помощью двойных или одинарных кавычек. Но при этом есть разница – в двойных кавычках интерпретатор будет пытаться найти переменные, а внутри одинарных кавычек – нет.
Пример:

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

Этот код выведет на экран строку:

Значение переменной: 123

И другой пример:

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

Выведет следующее:

Значение переменной: $var

Как мы видим, внутри одинарных кавычек не был выполнен поиск переменных и интерпретатор вернул нам текст ровно так, как он был определён.
Чтобы вывести значение переменной и при этом использовать одинарные кавычки, можно склеить строки. Этот приём называется конкатенацией строк (от англ. concatenation – сцепление, связывание). Для этого используется оператор "." (точка) между двумя значениями, который отделён от них пробелами. Пример:

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

Выведет строку:

Значение переменной: 123

Стоит отметить, что при использовании одинарных кавычек работа со строками будет происходить быстрее, так как не будет происходить поиск (или правильнее сказать парсинг) переменных внутри строки.

Давайте теперь рассмотрим код, похожий на тот, что мы только что написали:

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

В переменной $string сейчас хранится значение типа "строка". Несмотря на то, что до этого в $var было целое число. Это произошло в результате использования оператора "точка" для конкатенации строк. В результате его использования всегда получится строка. И, как Вы уже, наверное, догадались, тип, который получится в результате какого-либо выражения, будет зависеть от оператора. То есть, при использовании плюса (оператора сложения), всегда будет получаться число.

Пример:

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

Выведет результат:

3

PHP достаточно умён, чтобы автоматически преобразовать строку '2' к числу и выполнить сложение. Таким образом, в зависимости от оператора, операнды будут сначала приведены к нужному типу, а затем над ними будет выполнена операция. Это называется "приведение типов".
Приведение типа можно сделать и самостоятельно. Делается это с помощью следующей конструкции:

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

Например:

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

В переменной $string сейчас строка, а в переменной $numeric – уже целое число. Пока что не будем на этом детально останавливаться, но знать, что это возможно, лишним не будет.

Давайте теперь пробежимся по типам, которые мы уже рассмотрели. Это числа (целые и дробные), строки. Помимо этих есть ещё несколько типов данных. Все мы их рассматривать сейчас не будем, но рассмотрим ещё один простейший тип – boolean (булево значение). У этого типа могут быть только два значения: true и false – "истина" и "ложь" (надеюсь, информатика у всех в школе была?). Этот тип используется для проверки различных условий и в следующем уроке мы рассмотрим его применение более детально. Это всё, что касается типов.

Читайте также
Комментарии


Daniil
Daniil

Классный курс, буду проходить!