Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Работа с шаблонами
 
 автор: Ozxar   (05.12.2004 в 01:19)   письмо автору
 
 

как релиазовать систему шаблонов?

   
 
 автор: glsv (Дизайнер)   (05.12.2004 в 02:03)   письмо автору
 
   для: Ozxar   (05.12.2004 в 01:19)
 

Хм, шаблонов чего?

   
 
 автор: Ozxar   (05.12.2004 в 02:59)   письмо автору
 
   для: glsv (Дизайнер)   (05.12.2004 в 02:03)
 

Дизайна

   
 
 автор: glsv (Дизайнер)   (05.12.2004 в 12:00)   письмо автору
 
   для: Ozxar   (05.12.2004 в 01:19)
 

Хм… мы, как правило, делаем так:
Выносим в отдельные файлы "шапку" и "нижнюю" часть дизайна.
И на все страницы подключаем эти файлы.

<?
  
include "top.php";
?>
// Здесь информационная часть страницы. 
<?  
  
include "bottom.php";
?>

В информационной части содержится практически только текст. (и рисунки к тексту если нужно). Стилистическое оформление текста выносится в CSS.

top.php, bottom.php содержат не только верхушку и низ страницы. Там же расположены левая (в top.php) и правая части дизайна (в bottom.php).

Таким образом изменив top.php, bottom.php и таблицы стилей можно полностью поменять дизайн.

   
 
 автор: cheops   (05.12.2004 в 12:32)   письмо автору
 
   для: glsv (Дизайнер)   (05.12.2004 в 12:00)
 

Наверное всё-таки имеется ввиду собственные теги, которые потом заменяются на HTML...

   
 
 автор: Artem S.   (05.12.2004 в 16:27)   письмо автору
 
   для: Ozxar   (05.12.2004 в 01:19)
 

Шаблон имеет вид:
<html>
<body>
......
<td>{TEXT1}</td>
....
</html>

Массив значений
$text['text1'] = 'hi';
Функция замены (напишешь сам)
replacetag("имя шаблона", "массив значений");
ну, например, так
replacetag("main.tpl", $text);
А сама функция пусть ищет в тексте скобки {} (через рег. выражения) и заменяет их с содержимым в соответствии с массивом значений.

Это самый простой метод IMHO.

   
 
 автор: RV   (05.02.2005 в 13:40)
 
   для: Artem S.   (05.12.2004 в 16:27)
 

а нельзя по подробнее про использование tpl желательно на простом примере?

   
 
 автор: Artem S.   (05.02.2005 в 15:01)   письмо автору
 
   для: RV   (05.02.2005 в 13:40)
 

Пожалуйста.
index.tpl

<html><head>
<title>{TITLE_PAGE}</title>
</head>
<body>
{BODY_MESSAGE}
</body>
</html>


Index.php

<?php
function replacetag($tpl_file$page_vars)
{
        
$search = array();
        
$keys array_keys($page_vars);
        for(
$i 0$i sizeof($page_vars); $i++)
        {
                
$search[] = "'{ "$keys[$i] ."}'i";
        }
        return 
preg_replace($search$page_vars$tpl_file);
}

$page_vars['TITLE_PAGE'] = 'Моя php станица!';
$page_vars['BODY_MESSAGE'] = 'Это моя первая php станица!';

$page replacetag('index.tpl'$page_vars);

include 
$page;

?>


Если я сильно не напутал - будит работать. Но это примитив, можно добиться бо'льшых возможностей.

   
 
 автор: cheops   (05.12.2004 в 17:06)   письмо автору
 
   для: Ozxar   (05.12.2004 в 01:19)
 

Мне лично шаблоны не по душе так как они несколько снижают эфеективность, дублируя по своей сути стилевые таблицы, хотя, конечно, иногда они очень полезны. Вот интересная и исчерпывающая статья по ним.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования