La verdad es q has dado en el clavo talcual, parece q la mejor manera de hacer esto es con la funcion preg_replace, esta tiene 3 argumentos, el 1 es el patron q queremos sustituir, el 2 por lo q queremos sustituir el patron y el 3 la cadena donde se llevara a cabo la sustitucion, pues bien con esto la posible solucion seria algo asi:
$a = array("coche", "rojo")
$s = "Mi ? es de color ?"
$r = preg_replace('/\?/', $a , $s );
el problema q he encontrado con esta solucion tiene q ver con el tipo de los parametros, me explico, segun he leido los posibles tipos de los parametros para esta funcion son los siguientes:
pattern replacement
string string
array string
array array
string array
Estos son los posibles tipos para los dos primeros argumentos de la funcion , pues bien las 3 primeras combinaciones son validas y la ultima q es la q he usado yo resulta q es la unica q no es valida
, no se puede tener una cadena como patron y un array para reemplazar el patron por lo q la solucion q escribi arriba no funciona, de hecho al ejecutarlo php me devuelve el siguiente error:
Warning: preg_replace() [function.preg-replace]: Parameter mismatch, pattern is a string while replacement is an array in...
La verdad es q en este punto no se por donde continuar, toda ayuda sera bien recibida, gracias