Clases, propiedades y métodos
Defina una clase de PHP con propiedades y métodos.
Clases, propiedades y métodos es una lección gratuita de PHP Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de PHP Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de PHP Academy incluye 4 lecciones en total.
Introducción: clases de PHP
Una clase es un plano para crear objetos. Define propiedades (datos) y métodos (comportamiento). Las funciones de POO de PHP hacen que el código sea más modular, reutilizable y fácil de mantener.
Conceptos fundamentales
Conceptos clave de las clases de PHP:
- Utilice
class ClassName {}para definir una clase - Las propiedades almacenan datos y los métodos definen el comportamiento
- Cree instancias con
new ClassName() - Acceda a los miembros mediante el operador flecha
->
Definir una clase
Ejemplo:
<?php
class Car {
public string $brand;
public int $year;
public float $price;
public function describe(): string {
return "{$this->year} {$this->brand}";
}
}
$car = new Car();
$car->brand = 'Toyota';
$car->year = 2022;
$car->price = 25000.0;
echo $car->describe(); // 2022 ToyotaModificadores de acceso
Continuación:
<?php
class BankAccount {
public string $owner;
private float $balance;
protected string $currency;
// public: accessible everywhere
// private: only within this class
// protected: this class + subclasses
}Propiedades con tipos
Práctica:
<?php
class Product {
public string $name;
public float $price;
public int $stock = 0; // default value
public bool $active = true;
public function inStock(): bool {
return $this->stock > 0;
}
}Métodos de instancia
Profundización:
<?php
class Counter {
private int $count = 0;
public function increment(): void { $this->count++; }
public function decrement(): void { $this->count--; }
public function reset(): void { $this->count = 0; }
public function value(): int { return $this->count; }
}
$c = new Counter();
$c->increment();
$c->increment();
echo $c->value(); // 2Encadenamiento de métodos
Uso avanzado:
<?php
class QueryBuilder {
private string $table = '';
private int $limit = 100;
public function from(string $t): static { $this->table = $t; return $this; }
public function limit(int $n): static { $this->limit = $n; return $this; }
public function build(): string {
return "SELECT * FROM {$this->table} LIMIT {$this->limit}";
}
}
echo (new QueryBuilder())->from('users')->limit(10)->build();Constantes de clase
Patrón del mundo real:
<?php
class HttpStatus {
const OK = 200;
const NOT_FOUND = 404;
const ERROR = 500;
public static function message(int $code): string {
return match($code) {
self::OK => 'OK',
self::NOT_FOUND => 'Not Found',
default => 'Error',
};
}
}
echo HttpStatus::message(HttpStatus::NOT_FOUND); // Not FoundPropiedades de solo lectura (PHP 8.1)
Prácticas recomendadas:
<?php
class Point {
public function __construct(
public readonly float $x,
public readonly float $y,
) {}
public function distanceTo(Point $other): float {
return sqrt(($this->x - $other->x) ** 2 + ($this->y - $other->y) ** 2);
}
}
$p1 = new Point(0, 0);
$p2 = new Point(3, 4);
echo $p1->distanceTo($p2); // 5Patrón práctico
Integre todos los conceptos mediante un patrón práctico para las clases de PHP.
Errores habituales
Evite estos errores habituales con las clases de PHP:
- Utilice modificadores de acceso para encapsular el estado
- Prefiera la promoción de propiedades del constructor para crear clases concisas
- Defina constantes con const para los valores fijos
- Utilice el encadenamiento de métodos (interfaz fluida) para crear APIs legibles
Comprobación rápida
¿Qué modificador de acceso hace que una propiedad solo sea accesible dentro de la propia clase?
Resumen: clases de PHP
Ha estudiado las clases de PHP. Estos son los puntos clave que debe recordar:
- Utilice modificadores de acceso para encapsular el estado
- Prefiera la promoción de propiedades del constructor para crear clases concisas
- Defina constantes con const para los valores fijos
- Utilice el encadenamiento de métodos (interfaz fluida) para crear APIs legibles
Preguntas frecuentes
¿La lección «Clases, propiedades y métodos» es gratis?
Sí — el texto completo de «Clases, propiedades y métodos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de PHP Academy, actualiza a CoddyKit PRO. El curso de PHP Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Clases, propiedades y métodos»?
Defina una clase de PHP con propiedades y métodos. Practicas PHP Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar PHP Academy?
No se requiere experiencia previa. PHP Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Clases, propiedades y métodos»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de PHP Academy?
Sí. Cada lección de PHP Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Clases, propiedades y métodos
- Constructores y destructores
- Propiedades y métodos estáticos
- Introducción a los métodos mágicos