Приведение типов - PHP
В этом уроке вы узнаете о приведении типов в PHP, которое позволяет преобразовывать значение одного типа в другой.
Введение
Приведение типов позволяет преобразовать значение одного типа в другой. Чтобы преобразовать значение, используйте следующие операторы приведения типов:
| Операторы приведения | Преобразование |
|---|---|
| (array) | Array |
| (bool) or (boolean) | Boolean |
| (int) or (integer) | Integer |
| (object) | Object |
| (real), (double), or (float) | Float |
| (string) | String |
Давайте рассмотрим несколько примеров использования операторов приведения типов.
Приведение к целому числу
Чтобы привести значение к целому числу, используйте оператор приведения типа (int).
Оператор (int) преобразует число с плавающей точкой в целое число. Результат округляется в сторону нуля. Например:
<?php
echo (int)12.5 . '<br>'; // 12
echo (int)12.1 . '<br>'; // 12
echo (int)12.9 . '<br>'; // 12
echo (int)-12.9 . '<br>'; // -12Допустим, у вас есть строка и вы хотите преобразовать ее в целое число:
<?php
$message = 'Hi';
$num = (int) $message;
echo $num; // 0Результат может оказаться не таким, как вы ожидали.
Если строка является числовой или ведущей числовой, то (int) приведет ее к соответствующему целочисленному значению. В противном случае (int) приводит строку к нулю. Например:
<?php
$amount = (int)'100 USD';
echo $amount; // 100В этом примере оператор (int) преобразует строку '100 USD' в целое число.
Обратите внимание, что оператор (int) преобразует значение null в ноль (0). Например:
<?php
$qty = null;
echo (int)$qty; // 0Приведение к числу с плавающей точкой
Чтобы преобразовать значение в число с плавающей точкой, используйте оператор (float). Например:
<?php
$amount = (float)100;
echo $amount; // 100Приведение к строке
Чтобы привести значение к строке, используйте оператор (string).
В следующем примере оператор (string) используется для преобразования числа 100 в строку:
<?php
$amount = 100;
echo (string)$amount . " USD"; // 100 USDВ этом случае вам не нужно использовать оператор (string), поскольку в PHP есть функция, называемая типовое приведение (type juggling), которая неявно преобразует целое число в строку:
<?php
$amount = 100;
echo $amount . ' USD'; // 100 USDОператор (string) преобразует истинное значение в строку "1", а значение false в пустую строку (""). Например:
<?php
$is_user_logged_in = true;
echo (string)$is_user_logged_in; // 1Вывод:
1Оператор (string) преобразует значение null в пустую строку.
(string) преобразует массив в строку "Array". Например:
<?php
$numbers = [1,2,3];
$str = (string) $numbers;
echo $str; // ArrayИ вы получите предупреждение о том, что пытаетесь преобразовать массив в строку.
Warning: Array to string conversion in ...Подытожим
- Приведение типов в PHP позволяет преобразовать значение из одного типа в другой.
- Используйте оператор приведения типов, чтобы привести значение к нужному типу.
var_dump() для вывода информации о переменной.