0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>В этом уроке мы познакомимся с переменными и научимся работать с ними. Мы узнаем, зачем они нужны, как их создавать, использовать и менять. Еще разберемся, как работать с константами, и что такое heredoc-синтаксис.</p>
1
<p>В этом уроке мы познакомимся с переменными и научимся работать с ними. Мы узнаем, зачем они нужны, как их создавать, использовать и менять. Еще разберемся, как работать с константами, и что такое heredoc-синтаксис.</p>
2
<h2>Создаем переменную</h2>
2
<h2>Создаем переменную</h2>
3
<p>Допустим, нам нужно напечатать на экран слово "Father!" два раза или даже пять раз. Эту задачу можно решить так:</p>
3
<p>Допустим, нам нужно напечатать на экран слово "Father!" два раза или даже пять раз. Эту задачу можно решить так:</p>
4
<p>В простом случае так и стоит поступить, но если слово "Father!" начнет использоваться чаще и в разных частях программы, то придется его везде повторять. Если нам понадобится изменить слово, то придется найти все места, где оно использовалось и выполнить необходимую замену. А можно поступить по-другому. Вместо копирования выражения достаточно создать переменную с этой фразой:</p>
4
<p>В простом случае так и стоит поступить, но если слово "Father!" начнет использоваться чаще и в разных частях программы, то придется его везде повторять. Если нам понадобится изменить слово, то придется найти все места, где оно использовалось и выполнить необходимую замену. А можно поступить по-другому. Вместо копирования выражения достаточно создать переменную с этой фразой:</p>
5
<p>В строчке $greeting = 'Father!' значение 'Father!' присваивается переменной с именем $greeting. В PHP имена переменных начинаются со знака<em>$</em>. В итоге переменная указывает на данные, которые были в нее записаны.</p>
5
<p>В строчке $greeting = 'Father!' значение 'Father!' присваивается переменной с именем $greeting. В PHP имена переменных начинаются со знака<em>$</em>. В итоге переменная указывает на данные, которые были в нее записаны.</p>
6
<p>Когда переменная создана, можно начать ее использовать.</p>
6
<p>Когда переменная создана, можно начать ее использовать.</p>
7
<h2>Использование переменной</h2>
7
<h2>Использование переменной</h2>
8
<p>Переменная подставляется в те места, где раньше стояло наше слово. Во время выполнения интерпретатор доходит до строчки print_r($greeting); и подставляет вместо переменной ее содержимое, а затем выполняет код.</p>
8
<p>Переменная подставляется в те места, где раньше стояло наше слово. Во время выполнения интерпретатор доходит до строчки print_r($greeting); и подставляет вместо переменной ее содержимое, а затем выполняет код.</p>
9
<p>Для имени переменной используется любой набор допустимых символов, к которым относятся буквы английского алфавита, цифры, знак _. При этом цифру нельзя ставить в начале. Имена переменных регистрозависимы, то есть имя hello и имя heLLo - это два разных имени, значит, это две переменные. Регистр в PHP имеет важное значение, не стоит забывать про него.</p>
9
<p>Для имени переменной используется любой набор допустимых символов, к которым относятся буквы английского алфавита, цифры, знак _. При этом цифру нельзя ставить в начале. Имена переменных регистрозависимы, то есть имя hello и имя heLLo - это два разных имени, значит, это две переменные. Регистр в PHP имеет важное значение, не стоит забывать про него.</p>
10
<p>Количество создаваемых переменных не ограничено, большие программы содержат десятки и сотни тысяч имен переменных. Для удобства анализа программы переменные принято создавать как можно ближе к тому месту, где они используются.</p>
10
<p>Количество создаваемых переменных не ограничено, большие программы содержат десятки и сотни тысяч имен переменных. Для удобства анализа программы переменные принято создавать как можно ближе к тому месту, где они используются.</p>
11
<h2>Изменение переменной</h2>
11
<h2>Изменение переменной</h2>
12
<p>Со временем внутри программы значения переменных могут изменяться:</p>
12
<p>Со временем внутри программы значения переменных могут изменяться:</p>
13
<p>Имя осталось тем же, но внутри другие данные. Переменные в PHP не требуют специального объявления. Вместо этого переменная объявляется при первом ее использовании в программе.</p>
13
<p>Имя осталось тем же, но внутри другие данные. Переменные в PHP не требуют специального объявления. Вместо этого переменная объявляется при первом ее использовании в программе.</p>
14
<p>Никогда нельзя быть точно уверенным, что записано внутри переменной. Чтобы быть спокойным, нужно проанализировать код, который находится перед переменной. Этим занимаются разработчики во время отладки, когда пытаются разобраться, почему программа не работает или работает не так, как задумано.</p>
14
<p>Никогда нельзя быть точно уверенным, что записано внутри переменной. Чтобы быть спокойным, нужно проанализировать код, который находится перед переменной. Этим занимаются разработчики во время отладки, когда пытаются разобраться, почему программа не работает или работает не так, как задумано.</p>
15
<p>Переменные меняются нечасто. Обычно их используют, чтобы хранить данные.</p>
15
<p>Переменные меняются нечасто. Обычно их используют, чтобы хранить данные.</p>
16
<h2>Ошибки при работе с переменными</h2>
16
<h2>Ошибки при работе с переменными</h2>
17
<p>Переменную нужно объявить до ее использования. Если сделать это позже, то программа не заработает:</p>
17
<p>Переменную нужно объявить до ее использования. Если сделать это позже, то программа не заработает:</p>
18
<p>Запуск программы выше завершается с ошибкой PHP Notice_ - это ошибка обращения. Она означает, что в коде используется имя (идентификатор), которое не определено. При этом в самой ошибке указан идентификатор переменой: greeting.</p>
18
<p>Запуск программы выше завершается с ошибкой PHP Notice_ - это ошибка обращения. Она означает, что в коде используется имя (идентификатор), которое не определено. При этом в самой ошибке указан идентификатор переменой: greeting.</p>
19
<p>Также к ошибке могут привести опечатки при использовании переменной и во время ее объявления. Количество подобных ошибок уменьшается за счет использования правильно настроенного редактора. Такой редактор подсвечивает имена, которые используются без объявления, и предупреждает о возможных проблемах.</p>
19
<p>Также к ошибке могут привести опечатки при использовании переменной и во время ее объявления. Количество подобных ошибок уменьшается за счет использования правильно настроенного редактора. Такой редактор подсвечивает имена, которые используются без объявления, и предупреждает о возможных проблемах.</p>
20
<h2>Константы</h2>
20
<h2>Константы</h2>
21
<p>Разработчики часто работают с данными, которые никогда не меняются. Например, число π, которое всегда равно 3.14 и не может измениться.</p>
21
<p>Разработчики часто работают с данными, которые никогда не меняются. Например, число π, которое всегда равно 3.14 и не может измениться.</p>
22
<p>Для обращения к подобным данным в PHP принято использовать константы:</p>
22
<p>Для обращения к подобным данным в PHP принято использовать константы:</p>
23
<p>Создание константы отличается от создания переменной. Оно начинается с ключевого слова const и последующего имени константы. При этом знак доллара не нужен. Далее ей присваивается нужное значение.</p>
23
<p>Создание константы отличается от создания переменной. Оно начинается с ключевого слова const и последующего имени константы. При этом знак доллара не нужен. Далее ей присваивается нужное значение.</p>
24
<p>Константы принято именовать буквами в верхнем регистре с _ в качестве разделителя. Константа тоже может использоваться в любом выражении. Единственное ограничение - константу нельзя изменить.</p>
24
<p>Константы принято именовать буквами в верхнем регистре с _ в качестве разделителя. Константа тоже может использоваться в любом выражении. Единственное ограничение - константу нельзя изменить.</p>
25
<p>В PHP много встроенных констант, которые можно использовать в любом месте программы. Вот некоторые из них:</p>
25
<p>В PHP много встроенных констант, которые можно использовать в любом месте программы. Вот некоторые из них:</p>
26
<ul><li>PHP_VERSION - текущая версия PHP</li>
26
<ul><li>PHP_VERSION - текущая версия PHP</li>
27
<li>PHP_MAXPATHLEN - максимальная разрешенная длина имени файла</li>
27
<li>PHP_MAXPATHLEN - максимальная разрешенная длина имени файла</li>
28
<li>PHP_INT_MAX - максимальное возможное значение целых чисел (integer)</li>
28
<li>PHP_INT_MAX - максимальное возможное значение целых чисел (integer)</li>
29
</ul><p>Кроме обычных констант в PHP существует отдельная группа -<strong>магические константы</strong>. Их отличия заключаются в следующем:</p>
29
</ul><p>Кроме обычных констант в PHP существует отдельная группа -<strong>магические константы</strong>. Их отличия заключаются в следующем:</p>
30
<ul><li>Магические константы невозможно определить самому, можно пользоваться только существующими</li>
30
<ul><li>Магические константы невозможно определить самому, можно пользоваться только существующими</li>
31
<li>Магические константы начинаются и заканчиваются символами __ (два подчеркивания)</li>
31
<li>Магические константы начинаются и заканчиваются символами __ (два подчеркивания)</li>
32
<li>Магия заключается в том, что такие константы имеют одно и то же значение только в пределах определенной части программы</li>
32
<li>Магия заключается в том, что такие константы имеют одно и то же значение только в пределах определенной части программы</li>
33
</ul><p>Последний пункт говорит о том, что существуют не очень постоянные константы, но их изменения регламентированы и на практике не вызывают проблем. К подобным константам относятся:</p>
33
</ul><p>Последний пункт говорит о том, что существуют не очень постоянные константы, но их изменения регламентированы и на практике не вызывают проблем. К подобным константам относятся:</p>
34
<ul><li>__LINE__ - содержит текущую строку файла, в котором она используется</li>
34
<ul><li>__LINE__ - содержит текущую строку файла, в котором она используется</li>
35
<li>__FILE__ - путь до текущего файла</li>
35
<li>__FILE__ - путь до текущего файла</li>
36
<li>__DIR__ - путь до директории, в которой находится текущий файл</li>
36
<li>__DIR__ - путь до директории, в которой находится текущий файл</li>
37
</ul><h2>Heredoc</h2>
37
</ul><h2>Heredoc</h2>
38
<p>Определять строки в PHP можно с помощью специального heredoc-синтаксиса. После оператора <<< необходимо указать идентификатор с произвольным именем, затем перевод строки и саму строку. В конце добавляется тот же идентификатор, который закрывает вставку. Такой способ удобен для задания длинных строк, внутри которых встречаются и переводы строк, и разнотипные кавычки:</p>
38
<p>Определять строки в PHP можно с помощью специального heredoc-синтаксиса. После оператора <<< необходимо указать идентификатор с произвольным именем, затем перевод строки и саму строку. В конце добавляется тот же идентификатор, который закрывает вставку. Такой способ удобен для задания длинных строк, внутри которых встречаются и переводы строк, и разнотипные кавычки:</p>
39
<p>Перед закрывающим идентификатором, в нашем случае - EOT, должен быть такой же отступ, как перед объявлением переменной, иначе PHP начнет ругаться на ошибку синтаксиса. В данном примере отступа нет, закрывающий идентификатор находится на одном уровне с началом блока.</p>
39
<p>Перед закрывающим идентификатором, в нашем случае - EOT, должен быть такой же отступ, как перед объявлением переменной, иначе PHP начнет ругаться на ошибку синтаксиса. В данном примере отступа нет, закрывающий идентификатор находится на одном уровне с началом блока.</p>
40
<h2>Выводы</h2>
40
<h2>Выводы</h2>
41
<p>В этом уроке мы познакомились с переменными и научились работать с ними. Мы узнали, зачем они нужны, как их создавать, использовать и менять. Еще разобрались, как работать с константами. Это значения, которые никогда не меняются. При этом существуют не очень постоянные константы, но их изменения регламентированы и на практике не вызывают проблем.</p>
41
<p>В этом уроке мы познакомились с переменными и научились работать с ними. Мы узнали, зачем они нужны, как их создавать, использовать и менять. Еще разобрались, как работать с константами. Это значения, которые никогда не меняются. При этом существуют не очень постоянные константы, но их изменения регламентированы и на практике не вызывают проблем.</p>