Hola a todos!!
Estoy usando PHP Simple HTML DOM para parsear un XML. El problema que tengo es que estoy parseando un xml que tiene varias etiquetas iguales, <pro>, lo que quiero es empezar a mostrar a partir de la cuarta etiqueta <pro>.
Pongo algo de mi código...
<?php
include('simple_html_dom.php');
$html = file_get_html('38024.xml');
foreach($html->find('pro') as $element4)
echo '<td>' . $element4->outertext . '%' . '</td>';
?>
Alguna Solución ?
Prueba asi:
<?php
include('simple_html_dom.php');
$html = file_get_html('38024.xml');
$i = 0;
foreach($html->find('pro') as $element4){
$i+=1;
if($i <= 3) { continue; }
echo '<td>' . $element4->outertext . '%' . '</td>';
}
?>
Yo preferiría utilizar el loop for...
Si!! Muchas gracias ~ Yoya ~, funciona perfectamente!
Gracias!
Saludos!!
Hola de nuevo, tengo otra duda sobre el mismo tema...
Con el siguiente código PHP estoy intentando que el valor que recoge a la hora de parsear, muestre una cosa o la otra. El caso es que con texto no me funciona, pero con números si.
<?php
foreach($html->find('vien') as $element7) {
echo '<td>';
echo $element7-> outertext ();
$element7 = $element7->__toString();
$element7 = intval($element7);
if ($element7=="S") {
print '<img src="prueba.gif" title="" alt="" />';
} elseif ($element7=="NE") {
print "prueba";
}
}
echo '</td>';
?>
He probado varias cosas y no ha funcionado entre ellas ... los 3 iguales, el trum y nada...
La razón porque funciona con numero es porque el valor de $element7 siempre sera un numero. Si mandas texto, el valor de la variable $element7 sera 0.
<?php
foreach($html->find('vien') as $element7) {
echo '<td>';
echo $element7-> outertext ();
$element7 = $element7->__toString();
$element7 = intval($element7);
if ($element7=="S") {
print '<img src="prueba.gif" title="" alt="" />';
} elseif ($element7=="NE") {
print "prueba";
}
}
echo '</td>';
Lo que puedes hacer es usar dos variables diferentes. La otra forma es quitar intval.
Un ejemplo para que entiendas mejor:
http://codepad.org/xP912tvT
Saludos, ya no podre contestar... Me voy de vacaciones!!!
He probado quitando el intval e incluso a poner las 2 variables diferentes pero en ambos casos lo que hace es que solo aparece la primera opcion del if, que es la imagen, independientemente de si el resultado de la variable es S o NE.
Alguna Solución ??
Que lo pases bien en tus vacaciones ~ Yoya ~ ;)