Альтернативный синтаксис PHP для отображений
Если вы не используете движок шаблонов CodeIgniter, вы будете использовать чистый PHP в ваших отображениях. Чтобы минимизировать PHP-код в этих файлах, и сделать более простой идентификацию блоков кода, рекомендуется использовать альтернативный синтаксис PHP для контролирующих структур и коротких тегов echo(). Если вам не знаком этот синтаксис, он позволяет удалить фигурные скобки и echo() из кода.
Автоматическая поддержка коротких тегов
Примечание: Если вы обнаружите, что описанный синтаксис не работает на вашем сервере, это может происходить потому, что короткие теги выключены в ini-файле PHP. CodeIgniter опционально может переписывать короткие теги на лету, позволяя использовать этот синтаксис, если ваш сервер его не поддерживает. Эта опция включается в файле config/config.php.
Пожалуйста обратите внимание, что при использовании этой опции ошибки PHP, если они происходят в отображениях, могут не выводиться. Вместо этого все ошибки будут выводиться, как ошибки eval().
Альтернативные echo()
Обычно для вывода вы пишете так:
<?php echo $variable; ?>
Альтернативный синтаксис позволяет делать так:
<?=$variable?>
Альтернативные управляющие структуры
Управляющие структуры, такие как if, for, foreach и while могут быть записанны в упрощенном формате. Вот пример для foreach:
<ul>
<?php foreach ($todo as $item): ?>
<li><?=$item?></li>
<?php endforeach; ?>
</ul>
Здесь не нужны скобки. Вместо этого, завершающая скобка заменяется на endforeach. Каждая из управляющих структур имеет закрывающий упрощенный синтаксис: endif, endfor, endforeach и endwhile
Обратите внимание, что используется не точка с запятой, а двоеточие. Это важно!
Вот другой пример, использующий if/elseif/else. Посмотрите на двоеточия:
<?php if ($username == 'sally'): ?>
<h3>Hi Sally</h3>
<?php elseif ($username == 'joe'): ?>
<h3>Hi Joe</h3>
<?php else: ?>
<h3>Hi unknown user</h3>
<?php endif; ?>