РНР относится к очень слабо типизированным языкам. Это значит, что переменные не требуют объявления перед своим использованием и что РНР всегда преобразует переменные в тот тип, который требуется для их окружения на момент доступа к ним.
Например, можно создать число, состоящее из нескольких цифр, и извлечь из него n-ю цифру, просто предположив, что это число является строкой. В следующем фрагменте кода перемножаются числа 12 345 и 67 890 и возвращается результат 838 102 050, который затем помещается в переменную $number
(см. пример).
Пример. Автоматическое преобразование числа в строку
<?php
$number = 12345 * 67890;
echo substr($number. 3. 1);
?>
Когда присваивается значение, $number
является числовой переменной. Но во второй строке кода вызов значения этой переменной помещен в РНР-функцию substr
, которая должна вернуть из переменной $number
один символ, стоящий на четвертой позиции (не забывайте, что в РНР отсчет позиции начинается с нуля). Для того чтобы выполнить эту задачу, РНР превращает $number
в строку, состоящую из девяти символов, чтобы функция substr
могла получить к ней доступ и вернуть символ, в данном случае 1.
То же самое происходит при необходимости превратить строку в число и т. д. А в нижеследующем примере переменной $pi
присвоено строковое значение, которое затем в третьей строке кода автоматически превращается в число с плавающей точкой, чтобы стать частью уравнения по вычислению площади круга, которое выводит значение 78,5398175.
Пример. Автоматическое преобразование строки в число
<?php
$pi = "3.1415927";
$radius = 5;
echo $pi * ($radius * $radius);
?>
На практике все это означает, что вам не стоит слишком волноваться за типы переменных. Им следует просто присвоить значения, имеющие для вас смысл, и РНР, если будет необходимо, их преобразует. Затем, если понадобится извлечь значение, их нужно просто запросить, к примеру, с помощью инструкции echo
.
Многострочные команды | Константы |