Получите помощь, поддержку и профессиональное общение в Клубе CodeIgniter

CodeIgniter User Guide Version 2.1.3


Альтернативный синтаксис PHP для отображений
Автоматическая поддержка коротких тегов
Альтернативные echo()
Альтернативные управляющие структуры

Альтернативный синтаксис 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; ?>

Поделиться


Переведено в компании Аринт.

Спасибо!

Вы тоже можете оказать помощь проекту! Как это сделать?

Помощь и поддержка

Вы можете задать вопросы и получить ответы и советы от гуру CodeIgniter и веб-разработки: вступайте в Клуб CodeIgniter

Яндекс.Метрика