Обработка bbcode простейшего

simpex

Новичок
Обработка bbcode простейшего

понимаю что вопрос нубский, но все же

есть текст вида


$a="бла бла бла [PHOTO1] бла бла [PHOTO5]";

есть массив фоток

$arr[1]="photo1.jpg"
$arr[2]="photo2.jpg"

$arr[5]="photo5.jpg"


необходимо выдать пользователю

бла бла бла <img src="photo1.jpg"> бла бла <img src="photo5.jpg">

т.е парсим стоку и заменяем нужный консрукции на фотки.



спасибо добрые люди!!!
 

Бутузов

Новичок
PHP:
<?
$arr = array();
$arr[1]="photo1.jpg";
$arr[2]="photo2.jpg";

$arr[5]="photo5.jpg" ;

function arrrep($matches){
	global $arr;
	if (isset($arr[$matches[1]])){
		return '<img src="'.$arr[$matches[1]].'" />';
	}
}
$str = "test test test [PHOTO1] test test [PHOTO5]";
echo preg_replace_callback('/\[PHOTO(\d+)\]/si', 'arrrep', $str); 
?>
 

Arekus

Новичок
$str = "бла бла бла [PHOTO1] бла бла [PHOTO5]";
$arr= array(1 => '123', 5 => '234');
echo $out_str = preg_replace('/\[PHOTO(\d+)\]/sie', '\'<img src="\'.$arr[\1].\'" />\'', $str);
 

simpex

Новичок
Автор оригинала: Бутузов
PHP:
<?
$arr = array();
$arr[1]="photo1.jpg";
$arr[2]="photo2.jpg";

$arr[5]="photo5.jpg" ;

function arrrep($matches){
	global $arr;
	if (isset($arr[$matches[1]])){
		return '<img src="'.$arr[$matches[1]].'" />';
	}
}
$str = "test test test [PHOTO1] test test [PHOTO5]";
echo preg_replace_callback('/\[PHOTO(\d+)\]/si', 'arrrep', $str); 
?>
пасиба!!!!!
респект!!!!
все работает
 
Сверху