Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Класс для создания templates, разработка 
:(
    Опции темы
MuToGeN
Дата 29.1.2003, 01:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



да, так удобнее и привычнее, особенно с закрытием тэга <LOOP>


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Wowa
Дата 29.1.2003, 04:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 1
Всего: 290



А как сделать, чтобы отображался этот код ?

<IF NAME="if_1">
Отображается текст блока "if_1"
</IF NAME="if_1">

Я так понимаю, сейчас мы придумываем что напихать в шаблон, а потом будем парсить?
PM WWW   Вверх
Cepera
Дата 29.1.2003, 04:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



имхо тоже smile.gif


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
Cepera
Дата 29.1.2003, 04:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



долго думал... и понял, что с одни идентификатором переменную ввести не получится... ты был прав, надо вводить какие-то ограничители... хм... можно и @, как ты предлагал... а можно и использовать стандартный вариант -- { & }... imho так проще опять же.... опять же , если захочешь вывести емаил - проблем не будет


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
Cepera
Дата 29.1.2003, 04:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



Цитата
Я так понимаю, сейчас мы придумываем что напихать в шаблон, а потом будем парсить?

естественно, а какой смысл браться за проект не зная, что там надо , а что нет?


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
Cepera
Дата 29.1.2003, 04:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



Цитата
А как сделать, чтобы отображался этот код ?

<IF NAME="if_1">
Отображается текст блока "if_1"
</IF NAME="if_1">



хм... что ж... попробую вопроизвести сразу:
Код

$start = strpos(strtolower($template_file), '<if name="'.strtolower($var_name).'">') + strlen('<if name="'.strtolower($var_name).'">');
$end = strpos(strtolower($template_file), '</if name="'.strtolower($var_name).'">');



ну, а между ними уже можно и вставлять smile.gif


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
MuToGeN
Дата 29.1.2003, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



Цитата
с одни идентификатором переменную ввести не получится...
да, @ - применяется для емаилов, $ - применяется как знак грина smile.gif... в принципе для реплейса пофиг, что это будет, а для того кто будет писать шаблоны, это может оказаться очень существенно.

насчет тэга <INCLUDE> - может лучше сделать не <INCLUDE FILENAME=...>, а <INCLUDE SRC=...>, всеж привычнее...

мысль насчет "архитектуры" (если это слово вообще применимо в данном случае):
1) нужен класс, который будет парсить кусок темплейта без <if> и <loop>, только подставляя переменные, которые будет брать либо с глобального уровня, либо из своего заранее созданного массива с именами и значениями переменных (так же пока никаких загрузок темплейтов из фаилов, просто строка - кусок темплейта, которая задается вне этого класса)
2) от него создать класс-потомок, который будет загружать весь темплейт из фаила, выдавать функциям первого класса по частям в зависимости от <if> и <loop>, если не loop, то все переменные берутся с глобального уровня, если loop, то парсить одну и ту же строку несколько раз, только давать разные значения из массива.

хотя... если будет <loop> внутри <loop>, то намечается какой-то запутанный рекурсивный алгоритм


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Cepera
Дата 29.1.2003, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



Цитата
насчет тэга <INCLUDE> - может лучше сделать не <INCLUDE FILENAME=...>, а <INCLUDE SRC=...>, всеж привычнее...

не вопрос, согласен


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
Cepera
Дата 29.1.2003, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



уф... а вот насчет класса с классом потомком, имхо какая-то ненужная и долгая возня...

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


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
MuToGeN
Дата 29.1.2003, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



согласен. тогда все это в одном классе


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
MuToGeN
Дата 29.1.2003, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



насчет рекурсивного вызова...
такая ситуация:
Код
<if name="if1">
 <loop name="loop1">
   <if name="if2">
   </if anme="if2">
   <if name="if3">
   </if name="if3">
 </loop name="loop1">
 <if name="if4">
 </if name="if4">
</if name="if1">
выресовывается иерархическая структура. тоже надо учесть....
у меня есть кой-какие мысли по этому поводу, только они еще окончательно не сформировались. как обдумаю, выложу свои соображения


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Cepera
Дата 29.1.2003, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



вложения?... хм... вот с этим, честно скажу, еще не знаю как справиться


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
Cepera
Дата 29.1.2003, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



хотя может разницы-то и нет?


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
Cepera
Дата 29.1.2003, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PHPexp
****


Профиль
Группа: Экс. модератор
Сообщений: 2146
Регистрация: 25.3.2002
Где: Russia, Samara

Репутация: 1
Всего: 7



ведь все равно все обрабатывается построчно


--------------------
I know it is heavy for reading, but I know you will read it anyway...
PM MAIL WWW ICQ   Вверх
MuToGeN
Дата 29.1.2003, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



действительно... а я уж начал голову ломать над этим


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Страницы: (5) Все 1 2 [3] 4 5 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1299 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.