Skip to content

Commit 3bf73a3

Browse files
authored
Update basic-syntax.xml to en
1 parent 8b62bee commit 3bf73a3

1 file changed

Lines changed: 74 additions & 49 deletions

File tree

language/basic-syntax.xml

Lines changed: 74 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,30 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<!-- EN-Revision: f4f96ef8b2a95283c92ea2183fe1dedf06f3ad22 Maintainer: shein Status: ready -->
2+
<!-- EN-Revision: 0e618211e53c66f33762be225a4d57c08ef4b2f7 Maintainer: shein Status: ready -->
33
<!-- Reviewed: no -->
4-
<chapter xml:id="language.basic-syntax" xmlns="http://docbook.org/ns/docbook">
4+
<chapter xml:id="language.basic-syntax" xmlns="http://docbook.org/ns/docbook" annotations="interactive">
55
<title>Основы синтаксиса</title>
66
<sect1 xml:id="language.basic-syntax.phptags">
77
<title>PHP-теги</title>
88
<para>
9-
При разборе файла PHP-интерпретатор ищет открывающие и закрывающие теги.
10-
Тег <literal>&lt;?php</literal> сообщает PHP, когда начинать интерпретацию PHP-кода,
11-
а тег <literal>?&gt;</literal>, когда заканчивать. Такой способ разбора разрешает
12-
встраивать PHP-код в разные документы, поскольку PHP-парсер проигнорирует всё,
13-
что разместили вне пары открывающего и закрывающего тегов.
9+
При разборе файла PHP-интерпретатор распознаёт открывающие и закрывающие теги
10+
<literal>&lt;?php</literal> и <literal>?&gt;</literal>,
11+
чтобы определить границы выполнения PHP-кода.
12+
PHP-парсер игнорирует содержимое за пределами этих тегов, что разрешает
13+
бесшовно встраивать PHP-код в документы одного или другого типа.
1414
</para>
1515

1616
<para>
17-
PHP включает короткий echo-тег <literal>&lt;?=</literal> —
18-
сокращение более многословного синтаксиса <code>&lt;?php echo</code>.
17+
За тегом <literal>&lt;?php</literal> обязательно указывают
18+
пробельный символ наподобие пробела, символа табуляции или новой строки,
19+
чтобы правильно разделить токены.
20+
Без пробельного символа возникнет синтаксическая ошибка.
1921
</para>
2022

23+
<para>
24+
PHP также включает короткий echo-тег <literal>&lt;?=</literal> —
25+
сокращение более многословного синтаксиса <code>&lt;?php echo</code>.
26+
</para>
27+
2128
<para>
2229
<example>
2330
<title>Открывающие и закрывающие теги PHP</title>
@@ -54,26 +61,28 @@
5461
</para>
5562

5663
<para>
57-
Лучше опустить PHP-тег, которым закрывают блок PHP-кода в конце файла, если файл состоит только из PHP-кода.
64+
Лучше не закрывать PHP-тегом блок PHP-кода, который стоит в конце файла.
5865
Это предотвращает случайное добавление пробелов или переводов
5966
строк после закрывающего PHP-тега, которые иногда становятся причиной нежелательных
6067
эффектов, поскольку PHP начнёт буферизацию вывода, если программист не намерен
6168
отправлять вывод в этой точке скрипта.
62-
<informalexample>
69+
</para>
70+
<para>
71+
<example>
72+
<title>Файл только с PHP-кодом</title>
6373
<programlisting role="php">
6474
<![CDATA[
6575
<?php
6676
67-
echo "Hello world";
77+
echo "Привет, мир!\n";
6878
69-
// ... ещё код
70-
71-
echo "Последняя инструкция";
79+
// …ещё код
7280
81+
echo "Последняя инструкция\n";
7382
// Скрипт заканчивается в этом месте без PHP-тега, которым закрывается блок кода
7483
]]>
7584
</programlisting>
76-
</informalexample>
85+
</example>
7786
</para>
7887
</sect1>
7988

@@ -83,15 +92,20 @@ echo "Последняя инструкция";
8392
PHP-интерпретатор игнорирует всё, что разместили вне пары открывающего и закрывающего тегов,
8493
что разрешает добавлять в файлы смешанное содержимое. Это разрешает встраивать PHP-код
8594
в HTML-документы, чтобы, например, создавать шаблоны.
86-
<informalexample>
95+
</para>
96+
<para>
97+
<example>
98+
<title>PHP-код, который встроили в HTML-разметку</title>
8799
<programlisting role="php">
88100
<![CDATA[
89101
<p>PHP-интерпретатор проигнорирует разбор PHP-кода в этом параграфе, а текст отобразится в браузере.</p>
90102
<?php echo 'А эту строку файла — разберёт.'; ?>
91103
<p>Этот параграф PHP тоже не станет анализировать как PHP-код и отправит в браузер.</p>
92104
]]>
93105
</programlisting>
94-
</informalexample>
106+
</example>
107+
</para>
108+
<para>
95109
Это работает предсказуемо, поскольку когда PHP-интерпретатор встречает закрывающие теги ?&gt;,
96110
он просто начинает выводить всё, что находит, — за исключением перевода строки, который
97111
идёт сразу за закрывающим тегом, как описывает раздел
@@ -165,53 +179,61 @@ echo "Последняя инструкция";
165179
</para>
166180

167181
<para>
168-
Примеры входа в режим PHP-парсера и выхода из него:
169-
170-
<informalexample>
182+
<example>
183+
<title>Примеры входа в режим PHP-парсера и выхода из него</title>
171184
<programlisting role="php">
172185
<![CDATA[
173186
<?php
174-
echo 'Это тест';
187+
188+
echo "Это тест\n";
189+
175190
?>
176191
177-
<?php echo 'Это тест' ?>
192+
<?php echo "Это тест\n" ?>
178193
179-
<?php echo 'Мы опустили последний закрывающий тег';
194+
<?php echo "Не закрываем блок кода в конце файла PHP-тегом\n";
180195
]]>
181-
</programlisting>
182-
</informalexample>
183-
<note>
184-
<para>
185-
Тег, которым закрывается блок PHP-кода в конце файла, необязателен,
186-
а при подключении файлов выражением <function>include</function>
187-
или <function>require</function> пропуск тега иногда приносит пользу,
188-
чтобы нежелательные пробелы не появлялись в конце файлов и не мешали позже
189-
добавлять к ответу сервера дополнительные HTTP-заголовки. При буферизации вывода
190-
пропуск тега также помогает исключить нежелательные пробелы в конце частей,
191-
которые сгенерировали подключаемые файлы.
192-
</para>
193-
</note>
194-
</para>
196+
</programlisting>
197+
</example>
198+
</para>
199+
<para>
200+
<note>
201+
<para>
202+
Тег, которым закрывается блок PHP-кода в конце файла, необязателен,
203+
а при подключении файлов выражением <function>include</function>
204+
или <function>require</function> пропуск тега иногда приносит пользу,
205+
чтобы нежелательные пробелы не появлялись в конце файлов и не мешали позже
206+
добавлять к ответу сервера дополнительные HTTP-заголовки. При буферизации вывода
207+
пропуск тега также помогает исключить нежелательные пробелы в конце частей,
208+
которые сгенерировали подключаемые файлы.
209+
</para>
210+
</note>
211+
</para>
195212
</sect1>
196213
<sect1 xml:id="language.basic-syntax.comments">
197214
<title>Комментарии</title>
198215
<para>
199216
PHP поддерживает комментарии в стиле языков программирования C, C++
200217
и в стиле командной оболочки Unix-систем, которая унаследовала стиль комментариев из языка Perl. Например:
201218

202-
<informalexample>
219+
</para>
220+
<para>
221+
<example>
222+
<title>Пример комментариев</title>
203223
<programlisting role="php">
204224
<![CDATA[
205225
<?php
206-
echo "Это тест"; // Это однострочный комментарий в стиле языка C++
207-
/* Это многострочный комментарий
208-
ещё одна строка комментария */
209-
echo "Это ещё один тест";
210-
echo "Последний тест"; # Это комментарий в стиле Unix-оболочки
226+
227+
echo "Это тест"; // Это однострочный комментарий в стиле языка C++
228+
/* Это многострочный комментарий
229+
ещё одна строка комментария */
230+
echo "Это ещё один тест\n";
231+
echo "Ещё один последний тест\n"; # Это комментарий в стиле Unix-оболочки
232+
211233
?>
212234
]]>
213235
</programlisting>
214-
</informalexample>
236+
</example>
215237
</para>
216238
<simpara>
217239
Однострочные комментарии распространяются только до конца строки PHP-кода
@@ -222,14 +244,15 @@ echo "Последняя инструкция";
222244
или <literal>#</literal> не влияют на это.
223245
</simpara>
224246
<para>
225-
<informalexample>
247+
<example>
248+
<title>Пример однострочных комментариев</title>
226249
<programlisting role="php">
227250
<![CDATA[
228251
<h1>Это <?php # echo "простой";?> пример</h1>
229252
<p>Заголовок вверху выведет 'Это пример'.</p>
230253
]]>
231254
</programlisting>
232-
</informalexample>
255+
</example>
233256
</para>
234257
<simpara>
235258
Комментарии в стиле языка C заканчиваются, когда обнаруживается первая последовательность
@@ -242,9 +265,11 @@ echo "Последняя инструкция";
242265
<programlisting role="php">
243266
<![CDATA[
244267
<?php
245-
/*
268+
269+
/*
246270
echo "Это тест"; /* Этот комментарий вызовет ошибку */
247-
*/
271+
*/
272+
248273
?>
249274
]]>
250275
</programlisting>

0 commit comments

Comments
 (0)