|
|
|
| У меня имеется текст в POST переменной, допустим он содержит такой вид:
Приве всем, это очень классный сайт, сейчас [date]29.09.2005[/date].
Так вот как мне заменить заменить [date]29.09.2005[/date], на функцию, допустим, такого вида:
function date ($date) {
echo "<b>$date</b>";
}
Причем чтобы в аргументе функции $date = 29.09.2005 (для этого примера).
Важный момент: Таких кодов в тексте может быть несколько и все с разными датами. Каждый должен прогянять через функцию и на месте [date]29.09.2005[/date] оставлять только то что возвращает функция.
Заранее благодарен! | |
|
|
|
|
|
|
|
для: B@cZ
(29.09.2005 в 18:27)
| | Для этого проще всего воспользоваться регулярными выражениями, используя функцию обратного вызова
<?php
$text = "Привет всем, это очень классный сайт, сейчас [date]29.09.2005[/date].";
$text = preg_replace_callback(
"|\[date\](.+)\[/date\]|iU",
"date_text",
$text);
echo $text;
function date_text($matches)
{
return "<b>".$matches[1]."</b>";
}
?>
|
| |
|
|
|