martes, 17 de noviembre de 2009

Métodos mágicos I - PHP 5 Orientado a objetos

Hola amigos ya estoy por aquí de nuevo. En esta ocasión y dado que estoy metido en unos asuntos en este momento que tratan sobre la programación orientada a objetos en php, os voy a comentar una serie de métodos llamados mágicos que se han introducido en la versión 5 de php.

A partir de la versión 5 de php se han introducido mejoras que facilitan la encapsulación de los objetos y así lo aproximan más a la POO.

Lo primero que cabe destacar es que tanto los métodos como los atributos pueden ser de tres tipos.

private: Sólo son accesibles los métodos de la clase.

protected: Sólo son accesibles desde los métodos de la clase y de clases derivadas.

public: Se pueden acceder a ellos desde fuera de los métodos de la clase.

El primer método "mágico" que voy a explicar es el constructor. En php 4 por convención se solía usar como constructor un método que tenía el mismo nombre que la clase. PHP 5 nos introduce el método __construct(), aquí tenéis un ejemplo.

<?php
class Rectangulo{
private $ancho;
private $largo;
function __construct($pAncho, $pLargo){
$this->ancho = $pAncho;
$this->largo = $pLargo;
}
}
?>


El siguiente método que voy a explicar es __toString(). Gracias a este método podemos sacar por pantalla un objeto como si fuera un string.

Vamos a ver un ejemplo.

function __toString(){
$retorno = 'Las dimensiones del rect&aacute;ngulo son:
(
'.$this->ancho.' x '.$this->largo.')<br />';
$retorno.= 'El &Aacute;rea es: '. $this->ancho * $this->largo;
return $retorno;
}


La llamada a estos métodos sería:

$rect = new Rectangulo (10,10);
echo $rect;






Escuchando ... Colorblind -- Counting Crows
[kml_flashembed movie="http://www.youtube.com/v/y0s7ycdUcHk" width="425" height="350" wmode="transparent" /]

No hay comentarios:

Publicar un comentario