Curso de PHP

Estás en: Sintaxis y Estructura : Array (Ejercicio Facturas)

Array (Ejercicio Facturas)

Ejemplo

Crear un documento que nos permite mostrar los datos de la factura de un cliente.
Los datos se recogen de los arrays definidos y se analizan posteriormente los cálculos del importe, total, iva..

//Datos del cliente
$datos_cliente = array (
"Nombre"=>"Anuncios KALO", 
"Direccion"=>"Avda. Navarra",
"Cp"=>"200013", 
"Poblacion"=>"Donostia-San Sebastián", 
"Provincia"=>"Gipuzkoa"
);


//Datos de la factura
$datos_factura = array (
array (2, "Ordenador Asus", 100), 
array (2, "Monitores 19 pulgadas", 50), 
array (2, "Ratones logitech", 10),
);


// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<  DATOS DEL CLIENTE

echo ("<h1><strong>FACTURA</strong></h1><br />");
echo ("<h2><strong>Datos cliente</strong></h2>");

echo "<table>";

foreach ($datos_cliente as $dato=>$valor) {
	echo "<tr>";
		echo "<td>$dato:<td>";
		echo "<td>$valor<td>";
	echo "</tr>";
}

echo "</table>";

// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<  DESCRIPCIÓN DE LOS ARTÍCULOS

echo ("<h2><strong>Descripción</strong></h2>");


$base_imponible=0;
$total=0;

echo "<table border=\"1\">";

echo "<tr>";
echo "<td>Unidades</td>";
echo "<td>Concepto</td>";
echo "<td>Precio/Unidad</td>";
echo "<td>Importe</td>";

//$datos_factura es un array donde cada línea de pedido es un array que contiene el dato de un pedido
foreach ($datos_factura as $linea_pedido=>$dato_pedido) {  
	echo "<tr>";
	echo '<td align=center>'.$dato_pedido[0].'</td>';
	echo '<td>'.$dato_pedido[1].'</td>';
	echo '<td align=center>'.$dato_pedido[2].' €</td>';
	echo '<td align=center>'.($dato_pedido[0]*$dato_pedido[2]).' €</td>';
	echo "</tr>";
	$base_imponible= $base_imponible + ($dato_pedido[0]*$dato_pedido[2]);
}

echo "</table>";

echo "<br />";
echo "Base Imponible: ".$base_imponible." €<br />";
echo "Iva: 16%<br />";
$total= ($base_imponible*1.16);
echo "TOTAL: ".$total." €";

RESULTADO POR PANTALLA:
FACTURA

Datos cliente
Nombre:		Anuncios KALO	
Direccion:		Avda. Navarra	
Cp:		200013	
Poblacion:		Donostia-San Sebastián	
Provincia:		Gipuzkoa	
Descripción
Unidades	Concepto	Precio/Unidad	Importe
2	Ordenador Asus	100 €	200 €
2	Monitores 19 pulgadas	50 €	100 €
2	Ratones logitech	10 €	20 €

Base Imponible: 320 €
Iva: 16%
TOTAL: 371.2 €