Intereting Posts
Извлечь DOM-элементы из строки, в PHP Получить текст из следующего тега Хорошая форма безопасности – нет CAPTCHA Доступ запрещен для пользователя 'root' @ 'localhost' с помощью PHPMyAdmin Обновление подписчиков в списке с использованием cURL и Mailchimp API v3 читать xml-файл с php Изменение значения переменной PHP с помощью AJAX Как использовать cURL для извлечения определенных данных с веб-сайта, а затем сохранить его в моей базе данных, используя php Многократное извлечение PDO одного и того же запроса Используя GD в PHP, как я могу сделать прозрачный водяной знак PNG в PNG и GIF-файлах? (Файлы JPG работают нормально) PHP strtotime () «первый понедельник февраля» возвращается во второй понедельник, если 1 февраля – понедельник UTF-8 Safe Equivelant of ord или charCodeAt () в PHP Расчет расстояний между двумя точками в Laravel Apache: как использовать переименовать движок внутри псевдонима Как включить в форму сущности некоторые поля из другого объекта?

Отдельная логика из презентации без использования механизма шаблонов

Как мы можем отделить логику от презентации без использования механизма шаблонов (традиционный php-not OOP). Спасибо заранее.

Solutions Collecting From Web of "Отдельная логика из презентации без использования механизма шаблонов"

Почему бы не использовать PHP как механизм шаблонов? Он используется в коде, который я опубликовал для вашего другого вопроса. Ваша программа должна быть разделена на 2 основных раздела: получение данных и отображение данных.

Каждая страница должна иметь собственный шаблон. В опубликованном мной коде есть 2 очень простых шаблона, form.php и list.php
просто расширьте его всем шаблоном сайта, и вы сделали!
Вот немного более сложный пример шаблона PHP:

 <table border="0" cellpadding="2" cellspacing="0" width="600"> <? foreach ($data as $row): ?> <tr bgcolor="#666699"> <td align=left> <font color="white"><b><?=$row['name']?></b></font> </td> <td align=right><font color="white"> <?=$row['date'] ?> </font></td> </tr> <tr bgcolor="f0f0f0"> <td colspan=2><?=$row['body'] ?></td> </tr> <? if ($row['answer']): ?> <tr bgcolor="d3d3d3"> <td colspan=2 valign="top"> <table border="0" cellpadding="0" cellspacing="5"> <tr> <td valign="top"><b>Answer: </b></td> <td><?=$row['answer'] ?></td> </tr> </table> </td> </tr> <? endif ?> <? if($admin): ?> <tr> <td colspan=2> <font size=-1> <?=$row['id']?> - <?=$row['ip']?> - <?=$row['topic']?> <? if($row['del']): ?> <a href="/gb/?action=show&id=<?=$row['id']?>">show</a> <? else: ?> <a href="/gb/?action=hide&id=<?=$row['id']?>">hide</a> <? endif ?> <a href="/gb/?action=edit&id=<?=$row['id']?>">edit</a> </font> </td> </tr> <? endif ?> <? endforeach ?> </table> 

И это называется так

 <? //some code to get data include 'tpl_top.php'; include 'tpl_list.php'; include 'tpl_bottom.php'; ?> 

Выглядит великолепно для меня!
Не знаю, если это то, о чем вы просите 🙂

Сам PHP может использоваться как механизм шаблонов. Просто поставьте всю свою логику, прежде чем выводить что-нибудь. Проще говоря:

  1. Обработать ввод
  2. Назначьте все динамические данные для вывода на переменные
  3. Запустите код просмотра. Код просмотра может быть в отдельном файле, который вы включаете.
  4. В представлении просто используйте такие вещи, как echo и foreach для вывода данных, которые вы помещаете в переменные на шаге 2.