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 :: Версия для печати :: preg_replace_callback
Форумы портала PHP.SU » PHP » Программирование на PHP » preg_replace_callback

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

1. collrid - 10 Августа, 2008 - 16:41:47 - перейти к сообщению
CODE (text):
скопировать код в буфер обмена
  1. <?php
  2.   $text = "<?php echo \"preg_replace_callback ответил!\"; ?> Привет \n";
  3.   function next_year($matches)
  4.   {
  5.      eval($matches[1]);
  6.   }
  7.  
  8.   echo preg_replace_callback(
  9.               "/\<\?php(.*)\?\>/iU",
  10.               "next_year",
  11.               $text);
  12.  
  13. ?>


Вроде вот скрипт работает, но изначально он возращает то, что получает от функции, а потом простой текст. А мне так не подходит! Помогит сделать так, чтоб где взял данные туда и вернул их!
(Добавление)
Если в начале переменной поставить пустый теги:
<?php
$text = "<?php ?> Привет <?php echo \"preg_replace_callback ответил!\"; ?> Привет <?php echo \"preg_replace_callback ответил!\"; ?> Привет <?php echo \"preg_replace_callback ответил!\"; ?>\n";
function next_year($matches)
{
$sus=eval($matches[1]);
return $sus;
}

echo preg_replace_callback("/\<\?php(.*)\?\>/","next_year",$text);

?>

ТО так все нормально!
Но мне кажется - что-то тут не так!
2. UA.ProG - 11 Августа, 2008 - 13:27:53 - перейти к сообщению
Напиши пожалуйста текс который ты хочешь получить на выходе

 

Powered by ExBB FM 1.0 RC1