Переменные и типы данных

Вы начинаете с нуля? Отлично — переменные станут вашим ключом к веб-миру
Вы только начинаете свой путь в веб-разработке, и сейчас самое время разобраться с тем, что составляет основу любого скрипта. Представьте, что переменная — это коробка с наклейкой. Вы можете положить туда число, строку, даже целый массив данных. И каждый раз, когда вы обращаетесь к этой коробке по имени, вы получаете её содержимое. Это звучит просто, но именно здесь кроется 80% ошибок начинающих разработчиков. На нашей платформе вы не просто прочитаете теорию — вы шаг за шагом научитесь управлять этими коробками так, чтобы ваш код работал стабильно и предсказуемо.
В отличие от других курсов, где вам дают общие определения и сразу переходят к сложным конструкциям, мы построили обучение вокруг реальных кейсов. Вы будете не просто запоминать, что переменная в PHP начинается с символа $, а сразу увидите, как этот символ влияет на скорость работы скрипта и на вашу способность отлаживать код. Это не абстрактные знания — это инструменты, которые вы используете в каждом проекте, независимо от того, пишете ли вы лендинг или сложную CRM.
Что вы почувствуете после прохождения этого раздела? Уверенность. Вы перестанете бояться ошибок вроде «Undefined variable» или «Call to a member function on a non-object». Вы будете точно знать, где и как объявить переменную, какой тип данных выбрать для конкретной задачи и как избежать типичных ловушек. И всё это — без заучивания наизусть длинных справочников.
Шаг 1. Объявление переменной: первая строчка вашего кода
В PHP переменная объявляется знаком доллара и именем. Имя может содержать буквы, цифры и символ подчёркивания, но цифра не может стоять первой. Это правило вы запомните за одну секунду, но вот что важно: всегда давайте переменным осмысленные имена. $user_name или $usersList — это понятно. $a, $b — это путь к хаосу, особенно когда ваш проект вырастет до 10 000 строк.
Вот как это выглядит на практике:
- Шаг 1: Выберите имя. Например,
$totalPrice. Пусть имя отражает суть: общая цена, итоговая сумма. - Шаг 2: Присвойте значение.
$totalPrice = 1500;— теперь в переменной лежит число 1500. - Шаг 3: Используйте переменную.
echo $totalPrice;— вы увидите на экране 1500.
Важный нюанс: PHP — язык со слабой типизацией. Это значит, что одна и та же переменная может хранить сначала число, потом строку, потом массив. Но не делайте так без острой необходимости. Смешение типов — одна из главных причин багов, которые трудно отследить.
Шаг 2. Типы данных: что можно положить в коробку
PHP поддерживает 8 основных типов данных: целые числа (int), числа с плавающей точкой (float), строки (string), логические значения (bool), массивы (array), объекты (object), ресурсы (resource) и NULL. На курсе вы научитесь каждому из них, но начнём с четырёх базовых, которые встречаются в 95% вашего кода.
- Целые числа (int) — для подсчёта количества товаров в корзине, возраста пользователя, количества страниц. Диапазон: от -2^31 до 2^31-1 на 64-битных системах.
- Строки (string) — имя пользователя, email, пароль, текст статьи. В PHP строку можно заключить в одинарные (
') или двойные кавычки ("). Двойные кавычки позволяют встраивать переменные прямо внутрь строки:"Привет, $name!". - Логический тип (bool) — принимает значения
trueилиfalse. Используется в условиях: если пользователь авторизован, показать личный кабинет, иначе — форму входа. - Числа с плавающей точкой (float) — для цен, весов, процентов. Например,
price = 19.99;. Будьте осторожны с операциями: из-за особенностей представления чисел в двоичной системе могут возникать неточности (например,0.1 + 0.2 != 0.3).
Вы удивитесь, но выбор неправильного типа данных — частая ошибка новичков. Например, хранение цены как целого числа (вместо float) приводит к потере копеек. Или попытка сравнить строку с числом может дать неожиданный результат. На нашем курсе вы разберёте каждый случай на примерах из реальных проектов.
Шаг 3. Присваивание и перезапись: как не потерять данные
В PHP переменной можно присвоить значение один раз, а потом многократно изменять. Но есть одно «но»: если вы случайно перезапишете значение, старые данные исчезнут безвозвратно. Вот почему так важно следить за тем, чтобы имена переменных не пересекались.
Пример распространённой ошибки: вы объявили $price = 100;, а потом в другом месте написали $price = 'бесплатно';. Теперь у вас вместо числа — строка, и все математические операции с этой переменной приведут к ошибке. Как этого избежать? Используйте осмысленные имена и не меняйте тип переменной в процессе работы. Если вам нужно хранить разные данные — создайте новую переменную, например, $priceStatus = 'free';.
Шаг 4. Преобразование типов: когда PHP делает это за вас
PHP автоматически преобразует типы, когда это необходимо. Например, при сложении строки и числа: echo 5 + '10 рублей'; — PHP попытается взять число из начала строки и получит 15. Но если строка начинается с буквы, вы получите 0. Это не всегда очевидно, и такие «интуитивно понятные» преобразования могут скрывать логические ошибки.
Вот вам конкретная ситуация: вы принимаете данные из формы — количество товаров. Пользователь ввёл «2а». PHP преобразует это в число 2. Вы отправите заказ с количеством 2, а не 2а? Но пользователь имел в виду другое. Чтобы избежать таких проблем, всегда явно приводите типы: (int)$_POST['quantity'] или используйте is_numeric() перед обработкой.
Шаг 5. Типичные ошибки: что ждёт вас на пути
За годы обучения студентов мы собрали типовые ошибки, которые совершают новички. Вот самые популярные:
- Забыть знак $ — самая частая опечатка. Вместо
$nameвы пишетеname, и PHP выдаёт ошибку «Use of undefined constant». Простое решение: всегда проверяйте синтаксис. - Путаница между объявлением и присваиванием.
$x = 5;— это и объявление, и присваивание. Если вы забудете знак равенства, вы получите ошибку синтаксиса. - Неявное преобразование типов. Как уже говорили, строка '12abc' при сложении даст 12, что может привести к неожиданным итогам в корзине.
- Смешение русских и латинских символов. Если вы используете русскую букву в имени переменной (например,
$имя), это допустимо, но так делать не стоит — это снижает читаемость кода. - Неиспользуемые переменные. Если вы объявили переменную, но нигде её не используете, это мусор, который нагружает память. Борьба с мусором — часть профессионального подхода.
Шаг 6. Практический пример: корзина интернет-магазина
Давайте сразу применим знания на живом примере. Вы пишете корзину интернет-магазина. Что вам понадобится?
- Переменная
$productPrice(float) — цена товара. - Переменная
$quantity(int) — количество единиц. - Переменная
$userName(string) — имя покупателя. - Переменная
$totalPrice(float) — итоговая сумма. - Переменная
$discount(float) — скидка (может быть 0, если нет). - Логическая переменная
$isLoggedIn(bool) — авторизован ли пользователь.
Теперь напишем код:
$productPrice = 1999.99;
$quantity = 3;
$userName = 'Анна';
$totalPrice = $productPrice * $quantity;
$discount = 0.1; // 10%
$isLoggedIn = true;
if ($isLoggedIn) {
$totalPrice = $totalPrice - ($totalPrice * $discount);
}
echo "Спасибо, $userName! Итоговая сумма: $totalPrice рублей.";
Вы только что использовали четыре разных типа данных, выполнили арифметические операции, применили условие и вставили переменные в строку. Всё это — без единой ошибки, потому что вы явно задали типы и проверяли состояния.
Шаг 7. Логические переменные и проверки: управление потоком
Логический тип (bool) часто недооценивают. А зря. Именно он управляет ветвлениями в вашем коде: показывать кнопку «Купить» или «В корзине», разрешить доступ к админке или отказать. При этом есть тонкость: PHP считает ложными значения 0, 0.0, пустую строку '', '0', пустой массив, null и, конечно, саму false. Всё остальное — истина. Это нужно знать, чтобы не написать if ($active == true) — достаточно просто if ($active).
Частая ошибка: путать операторы присваивания (=) и сравнения (==, ===). if ($a = 5) присвоит переменной значение 5 и вернёт true, а не проверит равенство. Вы наступите на эти грабли не раз — и это нормально. На нашем курсе мы закрепим этот момент практическими упражнениями.
Шаг 8. Ресурсы и NULL: специальные случаи
Ресурсы (resource) — это ссылки на внешние данные: открытый файл, соединение с базой данных, изображение. Вы не можете напрямую манипулировать ресурсами, но должны знать, что их нужно закрывать после использования, чтобы не переполнять память. NULL — это отсутствие значения. Инициализация переменной значением null — хороший тон, если вы пока не знаете, какие данные она будет хранить.
Пример: вы получаете данные из формы. Поле «дополнительный телефон» может быть пустым. Вместо того чтобы присваивать пустую строку, используйте $extraPhone = null;. Это позволит вам позже проверить: if ($extraPhone !== null) { ... }.
Заключение: от переменных — к настоящим проектам
Теперь вы знаете, как объявлять переменные, какие типы данных существуют и как с ними работать. Но главное — вы понимаете, что выбор типа данных — это не академическая теория, а практический инструмент, от которого зависит стабильность вашего кода. Ни одна уважающая себя CRM, интернет-магазин или соцсеть не обходится без чёткой работы с типами.
На нашей платформе вы не остановитесь на этой теме. Следующие уроки ждут вас: массивы, функции, работа с базами данных. Но фундамент заложен именно здесь. Вы будете чувствовать себя уверенно, когда встретите в коде других разработчиков строки, массивы и логические проверки. Вы научитесь не просто писать код — вы научитесь видеть в нём структуру и логику. А это и есть главный навык веб-разработчика.
Не откладывайте практику. Откройте редактор, создайте несколько переменных, поэкспериментируйте с преобразованием типов. Если возникнут вопросы — вернитесь к этому руководству. И помните: каждая ошибка – это шаг к мастерству. Удачи!
Добавлено: 23.04.2026
