Авторизация
Логин:
Пароль:
Забыли свой пароль?
Войти как пользователь:
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
Подписка на рассылку
Реклама
11 лет сервису InKey.Biz.ua - Инвестиционный бизнес под ключ.
Расскажи о нас


Пользовательские движки шаблонизации

02.10.2009

Пример подключения движка XML/XSLT:

Сначала регистрируем движок:

global $arCustomTemplateEngines;
$arCustomTemplateEngines = array(
   "xslt" => array(
      "templateExt" => array("xsl"),
      "function" => "XSLTEngine"
   ),
);

Функция инициализации параметров движка:

function CreateXMLFromArray($xDoc, $xNode, $ar)
{
   foreach($ar as $key=>$val)
   {
      if(!is_string($key) || strlen($key)<=0)
         $key = "value";

      $xElement = $xDoc->createElement($key);
      if(is_array($val))
      {
         CreateXMLFromArray($xDoc, $xElement, $val);
      }
      else
      {
         $xElement->appendChild($xDoc->createTextNode(iconv( SITE_CHARSET, "utf-8", $val)));
      }
      $xNode->appendChild($xElement);
   }
   return $xNode;
}

Функция подключения движка:

function XSLTEngine($templateFile, $arResult, $arParams, $arLangMessages, $templateFolder, $parentTemplateFolder, $template)
{
   $arResult["PARAMS"] = array(
      "templateFolder" => $templateFolder,
      "parentTemplateFolder" => $parentTemplateFolder,
      "arParams" => $arParams,
      "arLangMessages" => $arLangMessages
   );

   $xDoc = new DOMDocument("1.0", SITE_CHARSET);
   $xRoot = $xDoc->createElement('result');
   CreateXMLFromArray($xDoc, $xRoot, $arResult);
   $xDoc->appendChild($xRoot);

   $xXsl = new DOMDocument();
   $xXsl->load( $_SERVER["DOCUMENT_ROOT"].$templateFile );

   $xProc = new XSLTProcessor;
   $xProc->importStyleSheet($xXsl);

   echo $xProc->transformToXML($xDoc);
}


Страница 3 - 3 из 3
Начало | Пред. | 1 2 3 | След. | Конец

Количество показов: 83200798
Рейтинг:  3.3

Возврат к списку

(Голосов: 1, Рейтинг: 3.3)

Материалы по теме:


Страницы: Пред. 1 ... 3862 3863 3864 3865 3866 ... 4028 След.
0  
Stuartslism
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
StuartDup
Имя Цитировать 0  
0  
Stuartslism
Имя Цитировать 0  
0  
KeithTob
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
Chungwhate
you can find out more jaxx wallet liberty
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
KeithTob
Имя Цитировать 0  
0  
StuartDup
Имя Цитировать 0  
0  
Chungpsype
pop over to this site wallet jaxx
Имя Цитировать 0  
0  
StuartDup
Имя Цитировать 0  
0  
Keithtor
Имя Цитировать 0  
0  
KeithTob
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
Keithtor
Имя Цитировать 0  
0  
Download_Saurf
Мобильные игры в последнее время становятся всё более интересными. Каждый день недели появляются новые проекты, которые впечатляют игроков со всего мира. В этой статье мы расскажем о последних обновлениях из мира мобильных игр и новостных сводках игровой индустрии.
Недавно компания Samsung объявила новую версию Android, которая внедрила множество обновлений для пользователей. В частности, теперь возможны новейшие визуальные параметры, что улучшает геймплей ещё более плавным.
Одной из самых долгожданных игр этого года является перезапуск Genshin Impact. Команда создали массу новых уровней, а также усовершенствовали визуальные эффекты и добавили дополнительные функции.
Значимым новостью стало анонс разработки от компании Supercell. Имя разработки пока не объявлено, но утечки говорят, что это будет неповторимый RPG с онлайн-режимом.
Для фанатов мобильных шутеров есть прекрасная новость - в этом месяце выйдет долгожданное расширение для Rise of Kingdoms. В этом обновлении создатели добавили новые здания, а также ввели уникальные механики.
Индустрия мобильных игр постоянно развивается, и каждый месяц выходят новые проекты. Следите за нашей страницей, чтобы узнать первыми о самых актуальных обновлениях и новостях индустрии.
Кроме того, не забудьте следить за нашими новостями в https://ok.ru/group/70000006632560/topic/157472786758512, чтобы получать интересные обновления из мира гейминга.
На сегодня это все известия из мира мобильных игр. До скорых встреч и удачных игровых сессий!

http://https%3A%2f%evolv.E.L.u.Pc@haedongacademy.org/phpinfo.php?a%5B%5D=%3Ca+href%3Dhttps://gamesstory.ru/%3E%D0%B8%D0%B3%D1%80%D1%8B+%D1%81+%D0%B1%D0%B5%D1%81%D0%­BA%D0%BE%D0%BD%D0%B5%D1%87%D0%BD%D1%8B%D0%BC%D0%B8+%D0%B4%D0­%B5%D0%BD%D1%8C%D0%B3%D0%B0%D0%BC%D0%B8%3C/a%3E%3Cmeta+http-equiv%3Drefresh+content%3D0;url%3Dhttps://gamesstory.ru/+/%3E
https://fabirus.ru/actions/uspey-zabronirovat-svoy-razmer-i-poluchi-skidku/
http://https%3A%2F%25Evolv.e.L.U.pc@haedongacademy.org/phpinfo.php?a%5B%5D=%3Ca+href%3Dhttps://gamesplanets.ru/%3E%D0%B2%D0%B7%D0%BB%D0%BE%D0%BC%D0%B0%D0%BD%D0%BD%D1%8B­%D0%B5+%D0%B8%D0%B3%D1%80%D1%8B+%D0%B1%D0%B5%D0%B7+%D0%B8%D0­%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B0%3C/a%3E%3Cmeta­+http-equiv%3Drefresh+content%3D0;url%3Dhttps://gamesplanets.ru/+/%3E
http://bbs.zonghengtx.cn/home.php?mod=space&uid=20435&do=profile&from=space
http://Brady.Goodman@ehostingpoint.com/info.php?a%5B%5D=%3Ca+href%3Dhttps://gameshubs.ru/%3E%D0%B2%D0%B7%D0%BB%D0%BE%D0%BC%D0%B0%D0%BD%D0%BD%D1%8B­%D0%B5+%D0%B8%D0%B3%D1%80%D1%8B+%D0%B1%D0%B5%D0%B7+%D0%B2%D0­%B8%D1%80%D1%83%D1%81%D0%BE%D0%B2%3C/a%3E%3Cmeta+http-equiv%3Drefresh+content%3D0;url%3Dhttps://gameshubs.ru/+/%3E

Сенсация! Эти сенса
Сенсация! Эти событ
Потрясающие события! Эти события в мире игр поразят вас!
dca1112
Имя Цитировать 0  
0  
Chungpsype
click this over here now jaxx wallet
Имя Цитировать 0  
0  
Stuartmor
Имя Цитировать 0  
0  
Keithmum
Имя Цитировать 0  
0  
StuartDup
Имя Цитировать 0  
0  
KeithMew
Имя Цитировать 0  
Страницы: Пред. 1 ... 3862 3863 3864 3865 3866 ... 4028 След.
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Отправить Отменить
Защита от автоматических сообщений
 
Публикация статей
На данной странице представлены элементы инфоблока статьи, относящиеся к типу Публикации. Статьи опубликованы на странице с помощью комплексного компонента Новостной раздел с указанием параметров инфоблока Статьи. При создании каждой статьи был использован тег <break />, который позволяет осуществить разделение статьи на страницы. В публичном разделе такая статья будет представлена в виде нескольких страниц в зависимости от количества тегов <break />

1QH.net - Unique Quality Hosting.network
liqpay webmoney privat24 visa mastercard
2002-2017 © InKey
All rights reserved