Un espacio para los entusiastas del web

Programación orientada a objetos en PHP5

Publicado el 22 de Marzo, 2007

La programación orientada a objetos es una forma de programación avanzada. PHP5 incorpora una nueva forma de POO, la cuál contribuye a mejorar su rendimiento y aumentar sus posibilidades.

Las aplicaciones se desarrollan creando clases, que están compuestas por funciones, variables o atributos. De las cuales se crean objetos, que obtienen las propiedades definidas en la clase.

Sintaxis de una clase en PHP

<?
//definir la clase
class nombre_clase{
      //atributos
      public $propiedad1;
      public $propiedad2;
      // metodos de la clase
      public function metodo1($parametro){
            instrucciones_metodo;
      }
}

?>

Opcionalmente podremos usar las siguientes palabras clave delante de class:

  • abstract: clase que no puede ser crear una instancia como objeto
  • final: la clase no puede ser extendida

Constructor de una clase

Podemos definir una serie de acciones que se realizan cuando se crea un objeto definiendo los métodos __construct:

<?
//definir la clase
class nombre_clase{
      //atributos
      public $propiedad1;
      public $propiedad2;
      //constructor de la clase
      public function __construct(){  }
      // metodos de la clase
      public function metodo1($parametro){
            instrucciones_metodo;
      }
}
?>

Podemos definir la visibilidad de un miembro de una clase usando las palabras clave:

  • public: miembro visible
  • protected: visible solo en la clase actual y derivadas
  • private: visible solo en la clase actual

Herencia de clases

Una clase puede heredar los métodos y funciones de otra, formando una relación madre-hija. De esta manera la clase hija, hereda y puede sobrescribir atributos miembros de su clase madre. Podemos decir que la clase nombre_clase1 hereda de la clase nombre_clase:

<?
class nombre_clase1 extends nombre_clase {
      public function __construct ($parametro) {
       instrucciones_metodo1;
     }
}
?>
>

Objetos

Podemos definir un objeto como un “estudiante” representado por un nombre, dicho estudiante cuenta con varias características a las que llamaremos atributos y a las acciones métodos. Para obtener un objeto de una clase en PHP5 debemos crearlo y asignarle una variable.

<?
$clase = new nombre_clase ();
$clase-> metodo1(“parametro”);
?>

Para crear ese objeto $clase de tipo nombre_clase y acceder a esos métodos y atributos debemos haberlos definido creando la clase nombre_clase.

Como pueden darse cuenta, asignamos el nuevo objeto de tipo nombre_clase a la variable $clase y accedemos a sus atributos: propiedad1, propiedad2 y su método: metodo1 usando el operador de objeto ( -> ).

Puedes descargar el ejemplo para ejecutarlo.

Otras lecturas

¿Te gustó?

¡Sí, me gusta! Le ha gustado a 41 personas
Loading ... Loading ...

Damián Pérez ValdésDamián Pérez Valdés para Maestros del Web.
Agrega tu comentario | Enlace permanente al artículo

Síguenos en: @maestros | Fan page

Comentarios

  1. Espero que este articulos les sea de gran utilidad. Sus comentarios seran tomados en cuenta en proximos articulos.

    Responder
    1. cesar morales

      hola como vas , espero que super , hey mira la esta semana inicie un curso de programacion de software , y bueno aun no hemos empezado a ver es si los temas , hey decime que puedo empezar a leer de aqui para ir empapandome del tema , que me sugieres , muchas gracias y por lo que vi , esta pagina tiene mucha info bastante interesante , hey y decime si hay algo de animacion 3d y diseño grafico , te dejo pues cuidate mucho y que bueno contar con personas como voz que le gustan compartir conocimiento ,

  2. rufus

    Yo tengo una pregunta. Trabajar con objetos en otros lenguajes es muy comodo porque haciando cosas como nombre_objeto. te aparece toda la lista de métodos que tiene ese objeto, propiedades, etc.¿Cómo puedo conseguir esto en PHP5? ¿Con eclipse, tal vez? Supongo que con dreamweaver nop.

    Gracias.

    Responder
  3. David

    rufus, te recomiendo Zend Studio, puedes bajartelo desde la pagina oficial de zend. El IDE es exelente, pruebalo.

    Responder
    1. cesar morales

      hey para que sirve y que es zend studio

  4. Para php, no hay nada mejor que Delphi PHP. El ide es buenísimo, pero la VCL es mejor todavía!

    http://www.codegear.com/delphiphp

    Hasta luego :)

    Responder
  5. Annette

    hola a todos, recien comienzo y lo hago con PHP 5
    ¿me pueden recomendar algo básico, o con que programa comenzar?
    desde ya gracias

    Responder
  6. Hola Annette, puedes utilizar Zend Studio y muy bueno. Es un excelente IDE. Puedes encontrarlo en http://www.zend.com/

    Responder
  7. ricardo perdomo

    java es una importante herramienta para programar por su gran facilidad para declarar variables y mostrar errores cuando lo cometan por eso les recomiendo este programa.java en eclipse

    Responder
  8. ahora todo es POO, php no tiene que quedarse atras

    Responder
  9. nucklear

    Pense que solo se hablaria de php, se que java es un claro ejemplo de lo que es poo, pero entonces tambien deberiamos incluir a los demas python, toda la plataforma .net , etc.
    El mejor ide que te ayudara a aprender a programar es aquel que solo te coloree el codigo resaltando la sintaxis, lo automatizado si eres nuevo no es bueno.
    Saludos

    Responder
  10. eddy juarez

    hola, estoy realizando mis primeras pruebas en php, mi consulta es, ¿se puede manejar el ingreso de datos y la visualizacion en tablas de estos datos en la misma pantalla? yo tengo un formlario.php y dentro de el tengo el codigo que lista el detalle para que se muestre al momento de presionar el boton “EJECUTAR CONSULTA”, pero al momento de cargar el archivo PHP de una vez se ejecuta esta consulta ¿que puedo hacer?

    Responder
  11. lidia

    me gustaria saber comu hacer una aplicacion en php que me calcule el volumen de una piramide triangular

    Responder
  12. me gustaria saber sobre como manejar las vertices orientadas

    Responder
  13. ALEJANDRO

    solo les keria decir que esta pagina es muy limitada no sirve para nada

    Responder
  14. bueno quiero saber sobre programacion orientada a objetos segun el modelo mvc

    Responder
  15. RITA

    recien me estoy iniciando en lo que es programacion orientada a objetos y me gustaria saber un poco mas de conceptos basicos, son muy importantes para mi. gracias!!!

    Responder
  16. christian

    Que pena lo que escribes para un tema tan importante como es la poo en php.

    No es de escribir por escribir, tienes que ser mas ilustrativo.

    Responder
  17. mirannia noguera

    quisiera saber que estrabajar con objeto

    Responder
  18. mayerly

    como se crea una clase

    Responder

Deja tu Comentario

Maestros del Web se reserva el derecho de moderación de los comentarios. Evita utilizar palabras soeces, ataques directos, descalificativos, insultos, de lo contrario tu comentario será eliminado.



Acerca de

Maestros del Web nace cuando intentamos traducir Webmaster al Español. Nacimos orientados al diseño y desarrollo web. Hoy somos un espacio de apoyo para los entusiastas que participan en proyectos en la red.
Leer más de Maestros del Web