Si pero es que también he hecho eso con preg_replace_calback , pero no hay forma de que en la función se ejecute lo qeu yo quiero porque en esa función se cargaría todo un código de galería y al parecer el sistema de callback necesita si o si return para devolver todo y es que no me sale ni a tiros
Esto es un ejemplo si hace falta pongo todo el código
Cita:
<?php
$text = " This is a test [gal~ruta~100~100] This is other test [gal~ruta2~100~100]";
function galj($matches)
{
global $text;
$exp=explode("~",$matches[1]);
$end=str_replace($matches[1],$a,$text);
if ($exp[0]=="gal")
{
$a="".$exp[1]."".$exp[2]."".$exp[3]."";
echo $a;
}
}
echo preg_replace_callback(
"/\[(.*?)\]/",
"galj",
$text);
?>
Y el resultado que da es este :
ruta100100ruta2100100 This is a test This is other test ( Desordenado ) y no entiendo porque en preg_replace_callback no puedo poner más argumentos al llamar a la función y porque en la función hay que poner matches , yo entiendo que se podrá llamar a la función que tu quieres y devolver el contenido de la función según parametros pero no encuentro la forma
Muchas gracias , saludos