Quisiera hacer lo siguiente:
Tengo una funcion q me coge un cacho de codigo y me lo devuelve como un bloque.
Código PHP:
function CreaBloque($nom)
{
$blockName = $this->izq."block: ".$nom.$this->der;
$blockEndName = $this->izq."/block: ".$nom.$this->der;
$ini = strpos($this->output,$blockName)+strlen($blockName);
$fin = strpos($this->output,$blockEndName);
return substr($this->output,$ini,($fin-$ini));
}
$this->blkvar[$nombreBloque];
y los reemplazo con la siguiente funcion
Código PHP:
function RepiteBloque($nom,$content)
{
$fin ='';
foreach($this->blkvar[$nom] as $v1)
{
$tmp = $content;
foreach ($v1 as $nom=>$val)
{
$nom = $this->izq.$nom.$this->der;
$tmp =str_replace($nom,$val,$tmp);
}
$fin .= $tmp;
}
return $fin;
}
Código PHP:
function CambiaBloque($nom, $content)
{
$blockName = $this->izq."block: ".$nom.$this->der;
$blockEndName = $this->izq."/block: ".$nom.$this->der;
$ini = strpos($this->output,$blockName);
$fin = strpos($this->output,$blockEndName)+strlen($blockEndName);
$bloq = substr($this->output,$ini,($fin-$ini));
return str_replace ($bloq, $content, $this->output);
}
Necesitaria q alguien me encaminara explicandome como funciona el preg_replace por q en la pagina php.net no queda muy claro (quizas sea mi coco q no llega :D).
Gracias.