distante Novato por aquí
Registrado: 14 Oct 2005 Mensajes: 1
|
Publicado: Mar Sep 21, 2010 11:07 pm Asunto: Buenas! |
|
|
|
Es la primera vez que escribo, siempre consulto la web pero ahora no encuentro solución, a ver si me pueden dar una mano.
Estoy haciendo un archivo PHP que copia un archivo en otro, luego lo abre en un array, busca en cada linea una texto contenido dentro de otro, y si lo encuentra lo reemplaza por algo que yo le digo, antes de esto también verifico que no exista el texto nuevo que quiero poner.
Todo me funciona bien con el problema de que cuando reemplazo el texto me esta agregando un () al final.
Le he dado miles de vueltas y no encuentro el motivo, este es el código:
[code]function escribir($sourcefile,$filetowrite)
{
echo 'Comenzo la funcion escribir!!!<br /><br />';
foreach ($sourcefile as $num_linea => $linea)
{
IF (preg_match("/theme_copyright()/i",$linea)) //existe theme_copy en la linea?
{
echo ' existe theme_copy en la linea? : Si <br /><br />';
IF (preg_match("/smf_simple()/i",$linea))
{
echo ' existe simple_copy en la linea? : Si, escribo el contenido normal. <br /><br />';
echo ' contenido de la linea : '.htmlspecialchars($linea, ENT_NOQUOTES).'<br /><br />';
fwrite ($filetowrite,html_entity_decode(htmlspecialchars($linea, ENT_NOQUOTES)));
}
ELSE
{
echo ' existe simple_copy en la linea? : NO, Agrego el copy. <br /><br />';
$temporal=$linea;//*****************BORRAR************************
$linea=preg_replace('/theme_copyright()/i',"theme_copyright(), '<br />', smf_simple(), '<br />'",$linea); //reemplazo la linea
//escribo en el archivo el contenido de la linea Reemplazada
fwrite ($filetowrite,html_entity_decode($linea)); //tengo problemas con un () que me esta agregando!
echo 'Se encontro esto:<br />';
echo 'Línea #<b>'.$num_linea.'</b> : '; // Muestra los números de línea.
echo htmlspecialchars($temporal, ENT_NOQUOTES).'<br />'; //muestra el contenido de la linea.
echo 'Se reemplazo con esto:<br />';
echo '<font size="5">Línea #<b>'.$num_linea.'</b> : '; // Muestra los números de línea.
echo '<b>'.htmlspecialchars($linea, ENT_NOQUOTES).'</b><br /></font>'; //muestra el contenido de la linea cambiada.
}
}
ELSE
{
fwrite ($filetowrite,html_entity_decode(htmlspecialchars($linea, ENT_NOQUOTES)));
}
}
}[/code]
Esto me da de resultado:
[quote]El archivo index.template.php existe
Archivo copiado a index.template.php~2
Comenzo la funcion escribir!!!
existe theme_copy en la linea? : Si
existe simple_copy en la linea? : NO, Agrego el copy.
Se encontro esto:
Línea #327 : <li class="copyright">', theme_copyright(), '</li>
Se reemplazo con esto:
Línea #327 : <li class="copyright">', theme_copyright(), '<br />', -REEMPLAZO, '<br />'[size=18]()[/size], '</li> [/quote]
No se como quitar esos ()
Alguien tiene una idea?
Gracias.[/quote] |
|