Основний синтаксис Теги PHP Коли парсер PHP обробляє файл, то шукає спеціальні початковий та кінцевий теги, тобто <?php та ?>, які вказують PHP, що текст між ними потрібно виконати як код. Такий алгоритм дозволяє вбудовувати PHP-код у різні документи, оскільки дані за межами спеціальних тегів ігноруються парсером PHP. PHP має echo-тег <?=, який є скороченим варіантом <?php echo. Початковий та кінцевий теги PHP 2. Можна застосувати короткий echo-тег, щоб . Це те саме, що й . 3. ]]> Початково короткі теги (приклад 3) доступні, але можуть бути вимкнені директивою short_open_tag файлу налаштувань &php.ini;, або під час збирання інтерпретатора, додавши до рядка конфігурації прапорець . Оскільки короткі теги можна вимкнути, то для найкращої сумісності рекомендується використовувати звичайні теги (<?php ?> та <?= ?>). Якщо файл містить тільки PHP-код, бажано не використовувати кінцевий PHP-тег. Бо якщо після кінцевого тегу вписані випадкові пропуски або символи початку рядка, PHP розпочне буферизацію виводу, коли програміст не має наміру надсилати будь-який вивід у цій точці сценарію. Відмежування від HTML Все, що за межами пари початкового та кінцевого тегів, ігнорується парсером PHP. Таким чином можна обробляти PHP-файли зі змішаним вмістом, тобто вбудовувати PHP-код в HTML-документи, наприклад, для створення шаблонів. Ця частина коду буде проігнорована PHP, але показана в браузері.

І цей код також буде проігноровано PHP, але показано в браузері.

]]>
Такий код обробляється як і очікується, оскільки коли парсер PHP зчитує кінцевий тег ?>, інтерпретатор просто починає виводити все, що записано далі аж до наступного початкового тегу. Але є два винятки, коли інтерпретатор не виводить вміст після кінцевого тегу: по-перше, якщо безпосередньо далі йде символ нового рядка, про це можна прочитати на сторінці поділ інструкцій; по-друге, якщо наступний текст записано всередині умовного оператора (в такому разі інтерпретатор визначає результат умови, від якого залежить, що саме виводити). Наступний приклад показує, як це виглядає.
Використання структур з умовами. Розмежування коду PHP та HTML з використанням умовних операторів Цей текст буде показано, якщо змінна $expression матиме значення true, тобто вираз if ($expression == true) буде дійсним. А інакше буде виводитись цей текст. ]]> В цьому прикладі PHP буде пропускати ті блоки, де умова виразу не виконується навіть, якщо ці блоки знаходяться за межами початкового та кінцевого PHP-тегів. PHP-інтерпретатор просто "перестрибне" їх. Для виводу великих блоків тексту, вихід з PHP-режиму є більш ефективним, ніж виведення всього тексту через echo чи print. Вставляючи блоки PHP всередину XML чи XHTML, потрібно використовувати теги <?php ?>, щоб код відповідав стандартам цих розміток.
Поділ інструкцій Як і C чи Perl, PHP вимагає завершення інструкцій символом крапки з комою в кінці кожного виразу. Кінцевий тег в блоці PHP-коду автоматично виконуватиме роль символа крапки з комою. Тобто не потрібно завершувати останній рядок PHP-блоку символом крапки з комою. Кінцевий тег також зумовить видалення символа нового рядка, що йде безпосередньо після нього. Приклад з кінцевим тегом та символом нового рядка Немає нового рядка ]]> &example.outputs; Приклади входу та виходу з парсера PHP: Кінцевий тег PHP-блока в кінці файлу є необов'язковим, а в деяких випадках з конструкціями include чи require його відсутність є корисною, оскільки випадковий пропуск в кінці файлу не додається у вивід, а також залишається можливість додавати заголовки для відповіді пізніше. Також це зручно під час буферизації виводу, коли пропуски в кінці частини виводу, згенерованої підключеним файлом — небажані. Коментарі PHP підтримує коментарі в стилі "C", "C++", Unix та shell (Perl). Наприклад: ]]> Однорядкові коментарі діють тільки до кінця рядка або блока PHP-коду, дивлячись, що йде першим. Це означає, що HTML-код після // ... ?> чи # ... ?> БУДЕ надруковано, оскільки кінцевий тег ?> перериває PHP-режим та вмикає вивід тексту і // чи # не впливають на це. Це приклад

Заголовок, що у верхньому рядку, буде виводити 'Це приклад'.

]]>
Коментарі в стилі "C" завершуються, коли зустрічається перша ж послідовність */. Потрібно обережно використовувати такі коментарі та перевіряти, чи не створено вкладених коментарів в такому ж стилі. Часто це стається, якщо намагатись закоментувати великий блок коду. ]]>