Tengo el siguiente código:¿Por qué no funciona strip_tags en PHP?
<?php echo strip_tags($firstArticle->introtext); ?>
Donde $ firstArticle es un objeto stdClass:
object(stdClass)[422]
public 'link' => string '/maps101/index.php?option=com_content&view=article&id=57:greenlands-newest-iceberg&catid=11:geography-in-the-news' (length=125)
public 'text' => string 'GREENLAND'S NEWEST ICEBERG' (length=26)
public 'introtext' => string '<p>A giant chunk of ice calved off the Petermann Glacier on
the northwest side of Greenland this summer. At nearly 100 square miles (260
sq. km) in size, four times the size of Manhattan, th' (length=206)
public 'date' =>
object(JDate)[423]
public '_date' => int 1284130800
public '_offset' => int 0
public '_errors' =>
array
empty
Se puede ver que $ firstArticle-> introtext se refiere a la cadena:
"<p>
Un pedazo gigante de hielo se desprendió del glaciar Petermann en el lado noroeste de Groenlandia este verano. Con casi 100 millas cuadradas (260 km2) de tamaño, cuatro veces el tamaño de Manhattan, th"
La etiqueta <p>
es un problema para mí en esta aplicación, sin embargo, strip_tags se niega rotundamente a eliminarla y no puedo entender por qué. De hecho, me di por vencido en strip_tags y trató de hacer un preg_replace lugar con la expresión regular/< | *>/(\ n.):?
preg_replace('/<(.|\n)*?>/', '', $firstArticle->introtext);
Pero eso no funcionó, ya sea! ¿Cómo puedo eliminar todas las etiquetas HTML (coincidentes o no) de esta cadena cuando la publico?
¿Está _muy_ seguro de que no es '& lt: p >' que hay allí? – Wrikken
He probado strip_tags() en su cadena y funciona aquí. – Evert