Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблемы с шаблонизатором
Форумы портала PHP.SU » » Вопросы новичков » Проблемы с шаблонизатором

Страниц (1): [1]
 

1. singmen - 09 Сентября, 2012 - 19:11:46 - перейти к сообщению
Прописываю шаблонизатор,

PHP:
скопировать код в буфер обмена
  1. $template = file_get_contents($_SERVER['DOCUMENT_ROOT']."/name.tpl");
  2. $body = str_replace('$ICQ$',$icqs,$template);
  3. $body = str_replace('$ABOUT$',$abouts,$template);
  4. $body = str_replace('$USER_SITE$',$sites,$template);
  5. echo $body;


А когда сохраняю и смотрю на результат выводится только последняя строка верно, а 2 строки до него не работают, в чем проблема? Менял их местами, выводится все равно последняя.
2. KingStar - 09 Сентября, 2012 - 19:17:06 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $template = file_get_contents($_SERVER['DOCUMENT_ROOT']."/name.tpl");
  2. $body = str_replace('$ICQ$',$icqs,$template);
  3. $body = str_replace('$ABOUT$',$abouts,$body);
  4. $body = str_replace('$USER_SITE$',$sites,$body);
  5. echo $body;
3. DelphinPRO - 09 Сентября, 2012 - 21:44:24 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $tags = array('$ICQ$','$ABOUT$','$USER_SITE$');
  2. $replacement = array($icqs,$abouts,$sites);
  3. $template = file_get_contents($_SERVER['DOCUMENT_ROOT']."/name.tpl");
  4. $body = str_replace($tags,$replacement,$template);
  5. echo $body;
4. armancho7777777 - 09 Сентября, 2012 - 22:15:53 - перейти к сообщению
Улыбка
PHP:
скопировать код в буфер обмена
  1.  
  2. $replacement = array('$ICQ$' => $icqs, '$ABOUT$' => $abouts, '$USER_SITE$' => $sites);
  3. $template = file_get_contents($_SERVER['DOCUMENT_ROOT']."/name.tpl");
  4. $body = str_replace(array_keys($replacement), array_values($replacement), $template);
  5. echo $body;
  6.  
5. caballero - 09 Сентября, 2012 - 22:51:06 - перейти к сообщению
Цитата:
Менял их местами, выводится все равно последняя.

так ты ж переменную перезатираешь
6. stasimus - 10 Сентября, 2012 - 10:15:19 - перейти к сообщению
Самый простой вариант убери вообще переменную $body заменив её на $template
7. imper - 10 Сентября, 2012 - 10:17:56 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $template = file_get_contents($_SERVER['DOCUMENT_ROOT']."/name.tpl");
  2. $body = str_replace('$ICQ$',$icqs,$template);
  3. $body .= str_replace('$ABOUT$',$abouts,$template);
  4. $body .= str_replace('$USER_SITE$',$sites,$template);
  5. echo $body;


попробуй так Улыбка
8. KingStar - 10 Сентября, 2012 - 10:33:48 - перейти к сообщению
imper да ну... брось Хм ты таким образом выведешь на одной странице три одинаковых шаблона
(Добавление)
до тебя уже дали то, что ему нужно, пусть выбирает Закатив глазки

 

Powered by ExBB FM 1.0 RC1