Авторизация
Логин:
Пароль:
Забыли свой пароль?
Войти как пользователь:
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
Подписка на рассылку
Реклама
11 лет сервису InKey.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 | След. | Конец

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

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

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

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


Страницы: Пред. 1 ... 2260 2261 2262 2263 2264
0  
Social Link - flego
Reasons Why Online Casinos Have Become a Worldwide Trend

Virtual gambling platforms have reshaped the gaming scene, offering a unique kind of user-friendliness and breadth that brick-and-mortar establishments are unable to replicate. In recent years, countless gamblers worldwide have welcomed the fun of internet-based gaming due to its availability, appealing qualities, and constantly growing selection of games.

If you’re just starting with the world of digital casinos or want to learn about reputable operators, why not participate in our growing gaming forum? It’s a destination where fans post tips, guiding you to enjoy more of your casino activities. Dive into the experience and learn more now: https://www.instagram.com/hot_fruit_za

One of the biggest attractions of online casinos is the incredible range of choices ready to play. Whether you prefer playing on old-school one-armed bandits, playing through story-driven modern slot games, or mastering skills in classic casino games like Blackjack, casino websites boast countless entertainment avenues. Several sites additionally feature live gaming streams, making it possible for you to interact with actual dealers and opponents, all while enjoying the realistic atmosphere of a real casino in your own space.

Social URL: https://www.instagram.com/hot_fruit_za

Beyond variety, digital casino services excel ease of access.
Имя Цитировать 0  
0  
Brotherswh
Получить онлайн консультацию психолога чате.  Получить КОНСУЛЬТАЦИЮ и ПОДДЕРЖКУ профессиональных психологов. Получить онлайн консультацию психолога чате.
Имя Цитировать 0  
0  
Fathersck
Получите консультацию онлайн-психолога в чате прямо сейчас.  Психолог t me. Психологическая и информационная онлайн-помощь.
Имя Цитировать 0  
Страницы: Пред. 1 ... 2260 2261 2262 2263 2264
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Отправить Отменить
Защита от автоматических сообщений
 
Публикация статей
На данной странице представлены элементы инфоблока статьи, относящиеся к типу Публикации. Статьи опубликованы на странице с помощью комплексного компонента Новостной раздел с указанием параметров инфоблока Статьи. При создании каждой статьи был использован тег <break />, который позволяет осуществить разделение статьи на страницы. В публичном разделе такая статья будет представлена в виде нескольких страниц в зависимости от количества тегов <break />

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