No se si lo he entendí bien, pero en fin, tomado su código,
lo he modificado para que sea funcional para el siguiente ejemplo.
Su código:
Código PHP:
$postData = [
'ID' => 'R76987753-3T56F21',
'Encabezado' => [
'IdDoc' => [
'TipoDTE' => 39,
'Folio' => 22,
'FchEmis' => '2019-06-03',
'FmaPago' => '1',
'FchVenc' => '2019-06-03'
],
'Emisor' => [
'RUTEmisor' => '76987753-3',
'RznSocEmisor' => 'APPNET TECHNOLOGY LIMITADA',
'GiroEmisor' => 'EDICION DE PROGRAMAS INFORMATICOS',
'Acteco' => '465100',
'DirOrigen' => 'VARAS MENA 980',
'CmnaOrigen' => 'SAN MIGUEL',
'CiudadOrigen' => 'SANTIAGO'
],
'Receptor' => [
'RUTRecep' => '18927902-7',
'RznSocRecep' => 'IVAN ANDRES SAAVEDRA VALENZUELA',
'GiroRecep' => 'ACTIVIDADES DE PROGRAMACION INFORMATICA',
'DirRecep' => 'AURORA DE CHILE 1475',
'CmnaRecep' => 'RECOLETA',
'CiudadRecep' => 'SANTIAGO'
],
'Totales' => [
'MntExe' => 0,
'MntNeto' => 8403,
'TasaIVA' => 19,
'IVA' => 1597,
'MntTotal' => 10000
]
],
'Detalle' => [
[
'NroLinDet' => 'iddetalle',
'CdgItem' => [
'VlrCodigo' => 'codigoproducto',
'TpoCodigo' => 'INTERNO POR DEFECTO'
],
'NmbItem' => 'nombre de producto',
'QtyItem' => 'cantidad',
'PrcItem' => 'precio',
'DescuentoMonto' => 'descuento',
'MontoItem' => 'totalimporte'
],
[
'NroLinDet' => 2,
'CdgItem' => [
'VlrCodigo' => 'ACEITUNA',
'TpoCodigo' => 'INTERNO'
],
'NmbItem' => 'Servicio 2',
'QtyItem' => 100,
'PrcItem' => 84,
'DescuentoMonto' => 0,
'MontoItem' => 8403
]
],
'DscRcgGlobal' => [
[
'NroLinDR' => 1,
'TpoMov' => 'D',
'GlosaDR' => 'DESCUENTO GLOBAL AL DOCUMENTO',
'TpoValor' => '$',
'ValorDR' => 10000
]
]
];
Una forma de hacer lo que necesita seria:
Código PHP:
foreach ($postData as $key => $value) {
echo $key.PHP_EOL;
if (is_array($value)) {
foreach ($value as $sub_key => $sub_val) {
if (is_array($sub_val)) {
echo $sub_key . ' : '.PHP_EOL;
foreach ($sub_val as $sub_sub_key => $sub_sub_value) {
if (!is_array($sub_sub_value)) {
echo $sub_sub_key . " = " . $sub_sub_value . PHP_EOL;
} else {
/** joder tio aca si es array otro foreach!! */
/** si si yo tambien tomo el mismo Whisky :-D */
}
}
} else {
echo $sub_key.' = '. $sub_val . PHP_EOL;
}
}
}
}
de todos modos no creo que sea la mejor opción la que esta utilizando para imprimir
la respuesta a la consulta de su DB
Mi recomendación es que optimice su consulta y obtenga los datos sin tanto anidado.
Pero en fin va en usted.
saludos.