En este tema, aprenderemos sobre las propiedades y métodos en la Programación Orientada a Objetos (POO) en PHP. Las propiedades y métodos son componentes fundamentales de las clases y objetos. Las propiedades son variables que pertenecen a una clase, mientras que los métodos son funciones que pertenecen a una clase.
Propiedades
Definición de Propiedades
Las propiedades son variables que se definen dentro de una clase. Se utilizan para almacenar datos o información sobre los objetos. Las propiedades pueden tener diferentes niveles de visibilidad: public
, protected
y private
.
- Public: Las propiedades públicas pueden ser accedidas desde cualquier lugar.
- Protected: Las propiedades protegidas solo pueden ser accedidas dentro de la clase misma y por clases derivadas.
- Private: Las propiedades privadas solo pueden ser accedidas dentro de la clase misma.
Ejemplo de Propiedades
<?php class Persona { public $nombre; protected $edad; private $dni; public function __construct($nombre, $edad, $dni) { $this->nombre = $nombre; $this->edad = $edad; $this->dni = $dni; } } $persona = new Persona("Juan", 30, "12345678"); echo $persona->nombre; // Acceso permitido // echo $persona->edad; // Error: propiedad protegida // echo $persona->dni; // Error: propiedad privada ?>
En este ejemplo, nombre
es una propiedad pública, edad
es una propiedad protegida y dni
es una propiedad privada.
Métodos
Definición de Métodos
Los métodos son funciones que se definen dentro de una clase. Se utilizan para definir el comportamiento de los objetos. Al igual que las propiedades, los métodos pueden tener diferentes niveles de visibilidad: public
, protected
y private
.
Ejemplo de Métodos
<?php class Persona { public $nombre; protected $edad; private $dni; public function __construct($nombre, $edad, $dni) { $this->nombre = $nombre; $this->edad = $edad; $this->dni = $dni; } public function saludar() { return "Hola, mi nombre es " . $this->nombre; } protected function obtenerEdad() { return $this->edad; } private function obtenerDni() { return $this->dni; } } $persona = new Persona("Juan", 30, "12345678"); echo $persona->saludar(); // Acceso permitido // echo $persona->obtenerEdad(); // Error: método protegido // echo $persona->obtenerDni(); // Error: método privado ?>
En este ejemplo, saludar
es un método público, obtenerEdad
es un método protegido y obtenerDni
es un método privado.
Ejercicio Práctico
Ejercicio 1: Crear una Clase con Propiedades y Métodos
-
Crea una clase llamada
Coche
con las siguientes propiedades:marca
(pública)modelo
(pública)año
(protegida)kilometraje
(privada)
-
Define un constructor que inicialice estas propiedades.
-
Crea un método público llamado
detalles
que devuelva una cadena con la marca, modelo y año del coche. -
Crea un método protegido llamado
obtenerKilometraje
que devuelva el kilometraje del coche. -
Crea un objeto de la clase
Coche
y muestra los detalles del coche utilizando el métododetalles
.
Solución
<?php class Coche { public $marca; public $modelo; protected $año; private $kilometraje; public function __construct($marca, $modelo, $año, $kilometraje) { $this->marca = $marca; $this->modelo = $modelo; $this->año = $año; $this->kilometraje = $kilometraje; } public function detalles() { return "Marca: " . $this->marca . ", Modelo: " . $this->modelo . ", Año: " . $this->año; } protected function obtenerKilometraje() { return $this->kilometraje; } } $coche = new Coche("Toyota", "Corolla", 2020, 15000); echo $coche->detalles(); // Marca: Toyota, Modelo: Corolla, Año: 2020 ?>
Resumen
En esta sección, hemos aprendido sobre las propiedades y métodos en PHP. Las propiedades son variables que pertenecen a una clase y pueden tener diferentes niveles de visibilidad. Los métodos son funciones que pertenecen a una clase y también pueden tener diferentes niveles de visibilidad. Hemos visto ejemplos prácticos y realizado un ejercicio para reforzar los conceptos aprendidos.
En el próximo tema, exploraremos la Herencia en PHP, que nos permitirá crear clases derivadas que heredan propiedades y métodos de otras clases.
Curso de Programación en PHP
Módulo 1: Introducción a PHP
- ¿Qué es PHP?
- Configuración del Entorno de Desarrollo
- Tu Primer Script en PHP
- Sintaxis y Variables en PHP
- Tipos de Datos en PHP
Módulo 2: Estructuras de Control
Módulo 3: Funciones
- Definiendo y Llamando Funciones
- Parámetros de Función y Valores de Retorno
- Ámbito de Variables
- Funciones Anónimas y Closures
Módulo 4: Arrays
Módulo 5: Trabajando con Formularios
- Manejo de Datos de Formularios
- Validación de Formularios
- Subida de Archivos
- Seguridad en Formularios
Módulo 6: Trabajando con Archivos
- Lectura y Escritura de Archivos
- Funciones de Manejo de Archivos
- Permisos de Archivos
- Funciones de Directorio
Módulo 7: Programación Orientada a Objetos (POO)
- Introducción a la POO
- Clases y Objetos
- Propiedades y Métodos
- Herencia
- Interfaces y Clases Abstractas
- Traits
Módulo 8: Trabajando con Bases de Datos
- Introducción a las Bases de Datos
- Conectando a una Base de Datos MySQL
- Realizando Operaciones CRUD
- Usando PDO para la Interacción con la Base de Datos
- Seguridad en Bases de Datos
Módulo 9: Técnicas Avanzadas de PHP
- Manejo de Errores y Excepciones
- Sesiones y Cookies
- Expresiones Regulares
- Trabajando con JSON y XML
- PHP y Servicios Web
Módulo 10: Frameworks de PHP y Mejores Prácticas
- Introducción a los Frameworks de PHP
- Empezando con Laravel
- Arquitectura MVC
- Mejores Prácticas en el Desarrollo de PHP
- Pruebas y Depuración