Вставка редактируемого данного
<td><?= $dat[1] ?></td>
foreach
<? foreach ($tab as $i => $dat): ?> <?= $dat['edit']?> Фамилия <?= $dat[1] ?> упоминается <?= $tdat[$i] ?> раз. <? endforeach ?>
Присваивание значения
<? $aa = 10; $bb = $aa + 5; ?> <?= $bb ?> // Данный пример выведет: 15
if...else
<? if ($dat['edit']): ?> вы можете редактировать этот блок <? else: ?> вы не можете редактировать этот блок <? endif ?>
Пример (полосатая таблица)
Это - пример, в котором используются все три конструкции. В нем цвет строк таблицы чередуется между белым (по умолчанию) и серым
(#dddddd):
<? $toggle=1; ?> <table> <? foreach ($tab as $dat): ?> # Если переменная $toggle положительна, то - серый фон <tr<? if ($toggle>0): ?> bgcolor="#dddddd"<? endif ?>> <td><?= $dat['edit'] ?></td> <td><?= $dat[1] ?> </td> <td><?= $dat[2] ?> </td> </tr> <? $toggle=-$toggle ?> <? endforeach ?> </table>
В приведенных примерах применялась короткая форма записи открывающих тегов PHP: <? ... ?>
.
Для того, чтобы работали короткие теги, они должны быть включены в настройках PHP (в файле php.ini должна присутствовать строка short_open_tag = On). В PHP4 короткие теги разрешены по умолчанию, в PHP5 - нет.
Если вы хотите использовать PHP в комбинации с XML (чтобы беспрепятственно использовать <?xml ?>) лучше отказаться от коротких открывающих тегов.
Полная форма немного длиннее: <?php ... ?>
.
По другому выглядит полная конструкция вывода на экран. Вместо <?= ... ?>
нужно писать <?php echo ... ?>
.
С учетом этих замен последний пример будет выглядеть так:
<?php $toggle=1; ?> <table> <?php foreach ($tab as $dat): ?> <tr<?php if ($toggle>0): ?> bgcolor="#dddddd"<?php endif ?>> <td><?php echo $dat['edit'] ?></td> <td><?php echo $dat[1] ?> </td> <td><?php echo $dat[2] ?> </td> </tr> <?php $toggle=-$toggle ?> <?php endforeach ?> </table>
Короткие теги удобно применять на стадии разработки. Готовая же работа должна быть выполнена обязательно с полной формой открывающих тегов. Для переделки коротких тегов в полную форму нет необходимости редактировать отдельно каждый тег - большинство редакторов кода позволяет делать одновременную замену во всех файлах шаблонов (обычно с помощью комбинации клавиш Ctrl+Shift+R). Замены нужно производить в три прохода:
Переход от короткой формы записи открывающих тегов к полной (без использования регулярных выражений) | |||
Найти: | Заменить на: | ||
1. | <?= | <? echo | |
2. | <? | <?php | |
3. | <?phpphp | <?php | Контрольный проход, т.к. где-то уже могла применяться полная форма |
<?=
, даже при выключенной опции short_open_tag.