PHP - Acceso a array

 
Vista:

Acceso a array

Publicado por Edison (2 intervenciones) el 03/12/2018 20:03:39
Saludos
tengo el siguiente resultado tras obtener datos de un xml, el problema es que necesito acceder a los datos que genera en una arreglo con var_dum obtengo el sigueite resultado, pero no se la forma de acceder al resultado que necesito

estado ---> AUTORIZADO
numeroAutorizacion ---> 0110201801179002283800120010660000016111234567817
fechaAutorizacion ---> 01/10/2018 18:41:12.000
comprobante ---> 2 1 METROPOLITAN TOURING C.A. METROPOLITAN TOURING 1790022838001 0110201801179002283800120010660000016111234567817 01 001 066 000001611 AV. DE LAS PALMERAS, DE LAS ORQUIDEAS N45-74, QUITO EC170138 01/10/2018 AV. DE LAS PALMERAS, DE LAS ORQUIDEAS N45-74, QUITO EC170138 745 SI 04 PLAN INTERNATIONAL INC. 0390018800001 AV. REPUBLICA OE1-135 ENTRE AV. 10 DE AGOSTO Y TERESA CEPEDA 20.0 0.0 2 2 20.0 2.4 0.0 22.4 DOLAR 20 22.4 1 3 FEE BOLETOS 1.0 20.0 0.0 20.0 2 2 12.0 20.0 2.4 SOLICITADO POR KATHY MORALES Yp7SMGS5fBowOnvZixAJCZUQOfo= WIlJd9gX/L1hfDHFby2e9KiooVk= yPY+RBn1qTXBhhHP0guXhgcd1KY= ttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt 9999999999999 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AQAB 2018-10-01T18:39:10-05:00tj3wn5rRaVWxa8eC1vcjrZr8fx4=CN=AC BANCO CENTRAL DEL ECUADOR,L=QUITO,OU=ENTIDAD DE CERTIFICACION DE INFORMACION-ECIBCE,O=BANCO CENTRAL DEL ECUADOR,C=EC1484734787contenido comprobantetext/xml
mensajes --->

desde donde dice comproante que una matriz que contiene datos de un xml

aquí un fragmente del xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="UTF-8"?>
<autorizacion>
  <estado>AUTORIZADO</estado>
  <numeroAutorizacion>0110201801179002283800120010660000016111234567817</numeroAutorizacion>
  <fechaAutorizacion class="fechaAutorizacion">01/10/2018 18:41:12.000</fechaAutorizacion>
  <comprobante><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<factura id="comprobante" version="1.0.0">
    <infoTributaria>
        <ambiente>2</ambiente>
        <tipoEmision>1</tipoEmision>
        <razonSocial>METROPOLITAN TOURING C.A.</razonSocial>
        <nombreComercial>METROPOLITAN TOURING</nombreComercial>
        <ruc>1790022838001</ruc>
        <claveAcceso>0110201801179002283800120010660000016111234567817</claveAcceso>
        <codDoc>01</codDoc>
        <estab>001</estab>
        <ptoEmi>066</ptoEmi>
        <secuencial>000001611</secuencial>
        <dirMatriz>AV. DE LAS PALMERAS, DE LAS ORQUIDEAS N45-74, QUITO EC170138</dirMatriz>
    </infoTributaria>
    <infoFactura>


aquí el código php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$Ffactura = "files/0128.xml";
$xml = simplexml_load_file($Ffactura,null,LIBXML_NOCDATA);
//$products = $xml->xpath("/comprobante");
//var_dump($products);
 
 
$products = $xml->xpath("//autorizacion");
	var_dump($products);
 
 
 foreach($products as $item){
	$a++;
    foreach($item as $key => $value){
		 $i++;
        echo $key." ---> ".$value."<br />"; // Su valor
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Acceso a array

Publicado por Edison Maza (2 intervenciones) el 03/12/2018 21:59:32
Gracias por contestart ya lo he intentado, pero el problema se origna con esta parte

<comprobante><![CDATA[<?xml version="1.0" encoding="UTF-8"?>

es donde empieza otros datos del xml y lo toma solo los datos no los campos para poder acceder a los valores
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Oscar
Val: 108
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Acceso a array

Publicado por Oscar (26 intervenciones) el 03/12/2018 22:18:18
apuntado al xml y cargándolo hace una búsqueda de los nodos que contiene

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<!DOCTYPE html>
<html>
<body>
 
<p id="demo"></p>
 
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
        myFunction(this);
    }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
 
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    var x = xmlDoc.getElementsByTagName('title')[0];
    var y = x.childNodes[0];
    document.getElementById("demo").innerHTML =
    y.nodeValue;
}
</script>
 
</body>
</html>

en el GET pon el xml en la misma ubicacion y le pones el nombre del xml as la prueba yo ya hice un desarrollo asi para el SAT lamentablemente en esta pc no tengo el codigo o te lo compartiría
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar