Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: блок php кода в тексте

Сообщения:  [1-10]   [11-20] 

 
 автор: Alph[p]a   (26.08.2007 в 23:50)   письмо автору
 
   для: kasmanaft   (26.08.2007 в 18:46)
 

ваУ !...... работатает) спасибо....блин и как только люди додумываються до токого)))
p.s странно пишу все это дело Zend Development Environment но там "func" не подсвечивается...как будто как строка......блин как задолбали все эти кавычки, и экранирование.....kasmanaft большое спасибо.

   
 
 автор: kasmanaft   (26.08.2007 в 18:46)   письмо автору
 
   для: Unkind   (26.08.2007 в 15:59)
 

Кстати, да. Когда-то с этим сталкивался, да забыл.
Если вот так сделать, то будет без бэкслешей:

preg_replace('/.*/se', '"\\0"', 'String with "double quotes"')

Кавычки/апострофы местами поменяли.
Наверное, и там нужно сделать 'highlight_string("\\0", 1);'

PS а "Warning: Unexpected character in input" у меня тоже не наблюдается.


UPD Интересно. Так вообще ерунда какая-то выводится. Какбудто highlight_string() вызывается без второго аргумента. Видимо придется использовать preg_replace_callback
function func($regs) {
    return highlight_string($regs[0], 1);
}

$text=preg_replace_callback("/<\?php.*?\?>/is", "func", $text);

   
 
 автор: Alph[p]a   (26.08.2007 в 16:49)   письмо автору
 
   для: Unkind   (26.08.2007 в 15:59)
 

что-ж делать-то тогда? ЛЮДИ ПОМОГИТЕ! плиз...........

   
 
 автор: Unkind   (26.08.2007 в 15:59)   письмо автору
 
   для: Alph[p]a   (26.08.2007 в 15:09)
 

Действительно. Что за ерунда.

<?php
header
("Content-type: text/plain; charset=utf-8");
var_dump(preg_replace('/.*/se'"'\\0'"'String with "double quotes"'));
?>


P.S. Ваш код у меня выводит все нормально, за исключением двойной кавычки, которую почему-то обработчик RegEx эскейпирует.

   
 
 автор: Alph[p]a   (26.08.2007 в 15:09)   письмо автору
 
   для: Alph[p]a   (26.08.2007 в 13:32)
 

ну посмотрите

<?php
$text
='
<?php
 $text = "[code]";
?>
'
;

$text=preg_replace("/<\?php.*?\?>/ise""highlight_string('\\0', 1);"$text);
echo 
$text;

?>

результат

<?php
$text =
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in F:\web\apache\Apache2\htdocs\001002.php(8) : regexp code on line 3
"[code]\";
?>
ну незнаю что и делать(((

   
 
 автор: Alph[p]a   (26.08.2007 в 13:32)   письмо автору
 
   для: Unkind   (26.08.2007 в 13:09)
 

Вот код ошибки

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in F:\web\xxx\library.php(149) : regexp code on line 33

на 149 строке

$pars=preg_replace("/<\?php.*?\?>/ise", "highlight_string('\\0', 1);", $pars);

мож тут что с кавычками?

   
 
 автор: Unkind   (26.08.2007 в 13:09)   письмо автору
 
   для: Alph[p]a   (26.08.2007 в 12:32)
 

C бекслешами код и был, значит?

   
 
 автор: Alph[p]a   (26.08.2007 в 12:32)   письмо автору
 
   для: Unkind   (26.08.2007 в 11:35)
 

а это не мой код.....это кусок кода из этого форума...)
ну так что сделать чтоб

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in

небыло...

   
 
 автор: Unkind   (26.08.2007 в 11:35)   письмо автору
 
   для: Alph[p]a   (26.08.2007 в 09:58)
 

Интересный у Вас код - $result = \"\";

   
 
 автор: Alph[p]a   (26.08.2007 в 09:58)   письмо автору
 
   для: Alph[p]a   (25.08.2007 в 15:08)
 

^

   

Сообщения:  [1-10]   [11-20] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования