Ver Mensaje Individual
  #7 (permalink)  
Antiguo 25/03/2009, 08:34
kim18
 
Fecha de Ingreso: enero-2009
Mensajes: 85
Antigüedad: 15 años, 3 meses
Puntos: 2
Respuesta: Crear matriz en PHP con XML

Bien! jejeje gracias a todos por sus respuestas, creo que es hora de colocar algo de código para ver si me puedo explicar mejor, disculpen si no soy explícita. :S

tengo mi XML que tiene una estructura parecida a esta:

Cita:
<items>
<contenido>texto1</contenido>
<contenido>texto2</contenido>
<contenido>texto3</contenido>
</items>
El XML yo lo llamo a mi HTML de la siguiente forma con PHP 5:

Cita:
$archivo = file_get_contents('xml/prueba.xml');

$doc = simplexml_load_string($archivo);
foreach ($doc->items as $items){
echo $items->contenido;}
con el código antes colocado, lo que consigo es mostrar los datos de TODAS las etiquetas "contenido", pero a mi lo que me interesa es mostrar solo las dos primeras en este HTML.

He estado investigando un poco más la estructura para hacer eso y me he encontrado con dos alternativas, la primera es a través de un foreach de la siguiente forma:

Cita:
foreach($doc->xpath('//contenido){
instrucciones
}
El código antes expuesto me muestra la información de los TRES nodos que tiene el archivo XML.

y la otra es con position:

Cita:
$contenido = $doc->xpath('//contenido[position()=1]')
//donde $contenido es la variable a la que esta asociado el nodo "contenido"
El código anterior muestra solamente el nodo 1.

Pero ninguna de las dos formas me permite tomar un rango de los nodos que son iguales..., ya que quiero solo los primeros dos y no todo el documento hasta ahora.

Habrá alguna forma de establecer una condición que me diga el rango de los nodos que quiero que muestre??

Gracias por todos sus comentarios y sugerencias, voy tomando en cuenta todas sus acotaciones!!

Saludos a todos!