PDA

Ver la Versión Completa : Classes con PHP - Ejemplo TCarrito


Emilio
11-06-2006, 19:46:54
Sencillo ejemplo de cómo usar clases con PHP.

En el ejemplo creamos las clases TCarrito y TLineas, con la finalidad de mantener el típico carrito de compra en una tienda virtual, para ello en a la clase principal TCarrito declaramos las varibles que contendrán los datos de cabecera, como nombre y dirección del cliente, así como una variable llamada lineas que a su vez contiene un array con todas las líneas del carrito.

Nuestro carrito necesitará de tres métodos o funciones para añadir, borrar y modificar los datos de las líneas, para ello implementamos tres sencillos métodos add_linea(), delete_linea() y update_linea()



Class TCarrito {
var $cliente_id;
var $nombre;
var $direccion;
var $poblacion;
var $provincia;
var $pais;
var $observaciones;
var $lineas; // array de TLineas

function add_linea ( $producto_id, $descripcion, $cantidad, $precio ) {
$lineas = New TLineas();
$lineas->producto_id = $producto_id;
$lineas->descripcion = $descripcion;
$lineas->cantidad = $cantidad;
$lineas->precio = $precio;
$this->lineas[] = $lineas;
}

function delete_linea ( $posicion ) {
if ( $this->lineas[$posicion] ) {
array_splice( $this->lineas, $posicion, 1 );
return true;
}
else {
return false;
}
}

function update_linea ( $posicion, $descripcion, $cantidad, $precio ) {
if ( $this->lineas[$posicion] ) {
$this->lineas[$posicion]->descripcion = $descripcion;
$this->lineas[$posicion]->cantidad = $cantidad;
$this->lineas[$posicion]->precio = $precio;
return true;
} else {
return false;
}
}
}

// La clase auxiliar para las lineas del carrito
Class TLineas {
var $producto_id;
var $descripcion;
var $cantidad;
var $precio;

}


Forma de uso:

// Constructor de la clase.
$MiCarrito = new TCarrito();

// Añadir líneas.
$MiCarrito->add_linea ( 25, 'Hamburguesa doble con patatas', 3, 6 );

// Modificar.
$MiCarrito->update_linea ( 1, 'Hamburguesa doble con patatas', 2, 6 );

// Eliminar
$MiCarrito->delete_linea ( 1 );

Para la cabecera directamente seteamos sus valores de la siguiente forma...

$MiCarrito->nombre = 'Emilio Muñoz';
$MiCarrito->población = 'Palma de Mallorca';
$MiCarrito->provincia = 'Baleares';
$MiCarrito->pais = 'España';

Y eso es todo, luego sólo se trata de guarda una posición en algún campo oculto de vuestro código HTML.

Insomne
16-06-2006, 01:37:08
Saludos Tecla (Insomne)

Insomne
16-06-2006, 01:42:21
Saludos Tecla (Insomne)