Уроки по программированию

Выберите рубрику:

PHP Laravel
Если вы полюбите программирование, то вы точно станете программистом!

Какое направление в IT выбрать:
Есть как минимум 2 больших направления в IT, в которых постоянно требуется большое количество программистов:
  • web-разработка (делать сайты)
  • мобильная разработка (делать приложения для смартфонов)
Конечно есть еще: большие данные, ML/DL, IoT и блокчейн. Но в эти сферы, как правило, берут уже опытных программистов.

УРОК 2: Как правильно писать переменные в PHP

Убедительная просьба - не копируйте код на сайте, чтобы его ввести в вашем редакторе, иначе ваш код иногда не будет работать! Вводите код в редактор от руки. Для удобства чтения я использую мнемоники HTML. Мнемоники HTML и символы (операторы) языка визуально ничем не отличаются, но это разные символы.
Переменные в PHP создаются с помощью знака "$", за которым следует имя переменной, например:

$price = 10.0;
$valera = "мой дружбан";
Имена переменных в PHP чувствительны к регистру! $uvasya, $Uvasya и $UVASYA - это совершенно разные переменные.
Имена переменных в PHP могут состоять только из букв, цифр и нижнего подчеркивания "_", но имена переменных не могут начинаться с цифры.

// так можно
$joy = "радость";

// так тоже можно
$_joy2 = "радость";

// так тоже можно
$_joY_2 = "радость";

// так НЕЛЬЗЯ! Переменная не должна начинаться с цифры.
$3joy = "радость";

// НЕЛЬЗЯ называть переменную словом $this. $this - это зрезервированное в PHP слово.
Для чего используются переменные? Переменным мы присваиваем выражения или, другими словами, значения этих выражений. Выражения, как правило, присваиваются посредством знака "=".

// Присваиваем переменной $joy значение строки "радость" или строковое значение "радость"
$joy = "радость";
Как правило присваивание переменным идет по значению. Но можно присвоить выражение переменным по ссылке. Что это значит?
Представьте себе коробочку в которой лежит бутерброд. Нам нужно присвоить бутерброд переменной. Есть 2 варианта:

// Присваиваем переменной $x значение строки "бутерброд". В этот момент в памяти компьютера (если простым языком)
// создается ячейка памяти (коробочка), куда кладется наша строка "бутерброд", потом снимается копия этой строки
// и присваивается переменной $x. Теперь если в "коробочке" мы поменяем значение, в переменной $x оно останется как было.
$x = "бутерброд";

$y = $x; // $y здесь тоже "бутерброд", "бутерброд" из $x скопировался в $y (т.е. у нас уже 2 бутерброда в $x и в $y)

$x = "слон"; // теперь мы $x присвоили "слон"

echo $y; // $y по-прежнему "бутерброд", так как в $y лежит копия строки "бутерброд".
// Это и значит, что мы присвоили $y строку "бутерброд" по значению.

// А теперь давайте присвоим значение переменной $x по ссылке

$x = "бутерброд";
$y = &$x; // Заметили знак "&"? Он символизирует присваивание по ссылке. Т.е. мы не копируем значение $x в переменную
// $y, как раньше, а ссылаемся из $y на значение $x. Теперь при обращении к $y она будет искать значение
// в $x и возвращать его. $y стала как бы псевдонимом $x.
$x = "слон";
echo $y; // $y уже "слон", так как в $y как бы ничего не лежит, она псевдоним $x.

// А если мы сделаем так:
$y = "пылесос";
echo $x; // То $x будет равен "пылесос", т.к. $y это всего лишь псевдоним $x.
Это похоже на то, как будто у вас с супругом или супругой две разные банковские корточки одного банка, но обе карточки ссылаются на один банковский счет, Ваш. И теперь не важно вы ли снимете 100 рублей или Ваша половинка, денег на счете будет для обоих на 100 рублей меньше.
В следующем уроке мы поговорим об инициализации переменных.