как мне написать свой скрипт для вывода данных, где я размещаю что-то вроде этого:{имя}
Вопрос
я видел много сценариев, в которых вы увидите что-то подобное
<meta keyword="{keywords}" ...>
или
<input type="text" name="name" value="{name}">
как это называется и как это сделать самому.
Спасибо
Нет правильного решения
Другие советы
Это называется шаблон.
Вам нужен механизм шаблонов, или вы можете написать его самостоятельно.Давным-давно существовал популярный шаблонизатор Smarty.Сегодня механизмы шаблонов являются частью большинства фреймворков.
Вот список нескольких шаблонизаторов для PHP:http://www.webresourcesdepot.com/19-promising-php-template-engines/
Учитывая тот факт, что у вас возник такой вопрос, ваш собственный шаблонизатор, скорее всего, будет содержать ошибки, поэтому предлагаю выбрать один из свободно доступных.
Еще кое-что.PHP сам по себе является своего рода шаблонизатором, поэтому вам не обязательно добавлять еще один уровень шаблонизации.Используйте PHP:
<input type="text" name="name" value="<?=$VALUES['name']?>">
могу ли я порекомендовать...
<input type="text" name="name" value="<?= e($name) ?>">
где e — ускользающая функция
я считаю, что шаблонизаторы не нужны
еще примеры...
для каждого...
<ul>
<?php foreach( $items as $item ): ?>
<li><?= e($item) ?><li>
<?php endforeach; ?>
</ul>
если....
<input type="checkbox"<?php if( $checkbox ): ?> selected="selected"<?php endif; ?>>
Существуют шаблонизаторы, которые поддерживают этот стиль синтаксиса переменных, например шаблоны Blitz (http://alexeyrybak.com/blitz/blitz_en.html) приходит в голову.
Я не совсем понимаю, что вы имеете в виду, но позвольте мне предположить:
$foo = "Please replace {this} here!";
$bar = str_replace('{this}', 'that', $foo);
Конечно, существует множество систем шаблонов, которые делают именно это, только гораздо умнее.Так что, возможно, вы захотите изучить это.