PHP - Типы переменных

Основной способ хранить информацию в середине программы PHP - использовать переменную.

Вот самые важные вещи, которые нужно знать о переменных в PHP.

  • Все переменные в PHP обозначены ведущим знаком доллара ($).

  • Значение переменной - это значение ее последнего присвоения.

  • Переменные назначаются с помощью оператора =, при этом переменная находится слева, а выражение, которое нужно оценить, справа.

  • Переменные можно, но не обязательно, объявлять перед назначением.

  • Переменные в PHP не имеют внутренних типов - переменная заранее не знает, будет ли она использоваться для хранения числа или строки символов.

  • Переменные, используемые до их назначения, имеют значения по умолчанию.

  • PHP отлично справляется с автоматическим преобразованием типов из одного в другой, когда это необходимо.

  • Переменные PHP похожи на Perl.

PHP имеет в общей сложности восемь типов данных, которые мы используем для создания наших переменных:

  • Integers - целые числа без десятичной точки, например 4195.

  • Doubles - числа с плавающей запятой, например 3.14159 или 49.1.

  • Booleans - имеют только два возможных значения: истина или ложь.

  • NULL - это особый тип, который имеет только одно значение: NULL.

  • Strings - представляют собой последовательности символов, например «PHP поддерживает строковые операции».

  • Arrays - именованные и индексированные коллекции других значений.

  • Objects - это экземпляры классов, определенных программистом, которые могут упаковывать как другие виды значений, так и функции, специфичные для этого класса.

  • Resources - специальные переменные, которые содержат ссылки на ресурсы, внешние по отношению к PHP (например, соединения с базой данных).

Первые пять являются простыми типами , а следующие два (массивы и объекты) - составными - составные типы могут упаковывать другие произвольные значения произвольного типа, тогда как простые типы не могут.

В этих главах мы объясним только простой тип данных. Массив и объекты будут объяснены отдельно.

Целые числа

Это целые числа без десятичной точки, например 4195. Это самый простой тип. Они соответствуют простым целым числам, как положительным, так и отрицательным. Целые числа могут быть присвоены переменным, или они могут использоваться в выражениях, например:

$int_var = 12345;
$another_int = -12345 + 12345;

Целое число может быть в десятичном (основание 10), восьмеричном (основание 8) и шестнадцатеричном (основание 16) формате. По умолчанию используется десятичный формат, восьмеричные целые числа указываются с начальным 0, а шестнадцатеричные - с начальным 0x.

Для наиболее распространенных платформ наибольшее целое число - (2 ** 31,1) (или 2 147 483 647), а наименьшее (самое отрицательное) целое число -. (2 ** 31,1) (или 0,2147,483,647).

Парные

Им нравится 3.14159 или 49.1. По умолчанию двойная печать с минимальным необходимым количеством десятичных знаков. Например, код -

<?php
   $many = 2.2888800;
   $many_2 = 2.2111200;
   $few = $many + $many_2;
   
   print("$many + $many_2 = $few <br>");
?>

Он производит следующий вывод браузера -

2.28888 + 2.21112 = 4.5

Булево

У них есть только два возможных значения: истина или ложь. PHP предоставляет пару констант, специально для использования в качестве логических значений: TRUE и FALSE, которые можно использовать так:

if (TRUE)
   print("This will always print<br>");

else
   print("This will never print<br>");

Интерпретация других типов как логических

Вот правила для определения «истинности» любого значения, еще не относящегося к логическому типу:

  • Если значение является числом, оно будет ложным, если оно равно нулю, и истинным в противном случае.

  • Если значение является строкой, оно будет ложным, если строка пуста (содержит нулевые символы) или является строкой «0», и истинно в противном случае.

  • Значения типа NULL всегда ложны.

  • Если значение является массивом, оно будет ложным, если не содержит других значений, и истинным в противном случае. Для объекта, содержащего значение, означает наличие переменной-члена, которой было присвоено значение.

  • Допустимые ресурсы - истина (хотя некоторые функции, возвращающие ресурсы в случае успеха, возвращают ЛОЖЬ в случае неудачи).

  • Не используйте двойные в качестве логических значений.

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

$true_num = 3 + 0.14159;
$true_str = "Tried and true"
$true_array[49] = "An array element";
$false_array = array();
$false_null = NULL;
$false_num = 999 - 999;
$false_str = "";

НОЛЬ

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

$my_var = NULL;

Специальная константа NULL по соглашению пишется с заглавной буквы, но на самом деле она нечувствительна к регистру; с таким же успехом можно было набрать -

$my_var = null;

Переменная, которой было присвоено значение NULL, имеет следующие свойства:

  • В логическом контексте он принимает значение FALSE.

  • Он возвращает FALSE при тестировании с помощью функции IsSet ().

Струны

Это последовательности символов, например «PHP поддерживает строковые операции». Ниже приведены действительные примеры строки

$string_1 = "This is a string in double quotes";
$string_2 = 'This is a somewhat longer, singly quoted string';
$string_39 = "This string has thirty-nine characters";
$string_0 = ""; // a string with zero characters

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

<?php
   $variable = "name";
   $literally = 'My $variable will not print!';
   
   print($literally);
   print "<br>";
   
   $literally = "My $variable will print!";
   print($literally);
?>

Это даст следующий результат -

My $variable will not print!
My name will print

Нет никаких искусственных ограничений на длину строки - в пределах доступной памяти вы должны иметь возможность создавать произвольно длинные строки.

Строки, разделенные двойными кавычками (как в «this»), предварительно обрабатываются PHP двумя следующими способами:

  • Определенные последовательности символов, начинающиеся с обратной косой черты (\), заменяются специальными символами.

  • Имена переменных (начинающиеся с $) заменяются строковыми представлениями их значений.

Замены escape-последовательности:

  • \ n заменяется символом новой строки
  • \ r заменяется символом возврата каретки
  • \ t заменяется символом табуляции
  • \ $ заменяется самим знаком доллара ($)
  • \ "заменяется одинарной двойной кавычкой (")
  • \\ заменяется одинарной обратной косой чертой (\)

Здесь документ

Вы можете назначить несколько строк одной строковой переменной, используя здесь документ -

<?php
   $channel =<<<_XML_
   
   <channel>
      <title>What's For Dinner</title>
      <link>http://menu.example.com/ </link>
      <description>Choose what to eat tonight.</description>
   </channel>
   _XML_;
   
   echo <<<END
   This uses the "here document" syntax to output multiple lines with variable 
   interpolation. Note that the here document terminator must appear on a line with 
   just a semicolon. no extra whitespace!
   
END; print $channel; ?>

Это даст следующий результат -

This uses the "here document" syntax to output
multiple lines with variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!

<channel>
<title>What's For Dinner<title>
<link>http://menu.example.com/<link>
<description>Choose what to eat tonight.</description>

Переменная область

Область действия можно определить как диапазон доступности переменной для программы, в которой она объявлена. Переменные PHP могут быть одного из четырех типов области видимости -

  • Локальные переменные

  • Параметры функции

  • Глобальные переменные

  • Статические переменные

Именование переменных

Правила присвоения имени переменной -

  • Имена переменных должны начинаться с буквы или символа подчеркивания.

  • Имя переменной может состоять из цифр, букв и подчеркиваний, но нельзя использовать такие символы, как +, -,%, (,). & , и т.д

Для переменных нет ограничений по размеру.