Время чтения ~ 20 сек. / 54 просмотра / 0 комментариев / Январь 08, 2024, 16:41

В этом уроке вы узнаете о жонглировании типами (type juggling) в PHP и о том, как оно работает.

Введение

PHP - это язык программирования со свободной типизацией. Это означает, что при определении переменной вам не нужно указывать её тип. PHP внутри определит тип переменной в зависимости от контекста, в котором она используется.

Например, если вы присвоите строку переменной, ее типом будет строка:

<?php

$my_var = 'PHP'; // строка

А потом присвоите той же переменной целое число, и её тип будет целым числом:

<?php

$my_var = 'PHP'; // строка
$my_var = 100; // целое число

PHP имеет внутреннюю функцию под названием "жонглирование типами" (type juggling). Это означает, что при сравнении переменных разных типов, PHP преобразует их в общий, сопоставимый тип. Например:

<?php
$qty = 20;
if($qty == '20') {
    echo 'Переменная равна 20';
}

Вывод:

Переменная равна 20

Из-за жонглирования типами PHP преобразовывает строку '20' в целое число (20) и сравнивает его с переменной $qty. Результат true. Таким образом, вы увидите сообщение "Переменная равна 20" в выводе.

Жонглирование типами также работает в арифметических операциях для переменных разных типов. В следующем примере показано, как жонглирование типами работает в арифметической операции:

<?php

$total = 100;
$qty = "20";
$total = $total + $qty;

echo $total; // 120

Тип $total — целое число, тогда как $qty — строка. Чтобы вычислить сумму, PHP сначала преобразует значение переменной $qty в целое число. Результатом является целое число.

Рассмотрим следующий пример:

<?php

$total = 100;
$qty = "20 штук";
$total = $total + $qty;

echo $total; // 120

В этом примере PHP преобразует строку "20 штук" как целое число 20 перед вычислением суммы.

Подытожим

  • PHP является языком с динамической типизацией. Тип переменной в PHP определяется на основе её значения.
  • При сравнении значений разных типов, PHP неявно преобразует их к одному сравнимому типу.
Теги:
php
Приведение типов - PHP
Операторы - PHP
Цикл for - PHP
Март 04, 2024, 17:51
В этом уроке вы узнаете об операторе for в PHP для многократного выполнения блока кода.
Приведение типов - PHP
Январь 07, 2024, 21:16
В этом уроке вы узнаете о приведении типов в PHP, которое позволяет преобразовывать значение одного типа в другой.
Операторы сравнения - PHP
Январь 10, 2024, 17:48
В этом уроке вы узнаете, как использовать операторы сравнения в PHP для сравнения двух значений.
Целое число (Integer) - PHP
Январь 05, 2024, 21:45
В этом уроке вы узнаете о типе PHP integer, который представляет целые числа в PHP.
Привет, Мир! на PHP
Декабрь 27, 2023, 22:33
В этом уроке вы узнаете, как выполнить сценарий, который выводит сообщение "Привет, Мир!" в веб-браузере и в командной строке.