Archivos externos
Parte de la sección Programación Orientada a Objetos del Journey de PHP de Coddy. Lección 1 de 91.
Los archivos externos le permiten organizar sus clases en archivos PHP separados e incluirlos en su programa principal utilizando require_once.
Crea un archivo PHP separado llamado my_class.php
<?php
class MyClass {
// cuerpo de la clase
}Incluye el archivo en tu archivo principal usando require_once
<?php
require_once 'my_class.php';Ahora puedes usar la clase en tu archivo principal
$obj = new MyClass();
echo get_class($obj);Salida:
MyClassLa sentencia require_once 'my_class.php'; conecta el archivo my_class.php a tu programa. El nombre del archivo debe incluir la extensión .php y estar entre comillas. require_once asegura que el archivo se cargue solo una vez, incluso si la sentencia aparece varias veces.
Desafío
IntermedioSe te proporcionan archivos PHP (my_class.php y driver.php). ¡Añade la sentencia require_once correcta en el archivo driver.php para conectar los archivos y usar la clase del archivo externo!
Pruébalo tú mismo
<?php
// TODO: Agregar la sentencia require_once para incluir my_class.php
$testCase = trim(fgets(STDIN));
$obj = new MyClass();
echo "Test completed\n";
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Programación Orientada a Objetos
1Fundamentos de la POO
Archivos externosIntroducción a la POOClases frente a objetosLa palabra clave $thisMétodosPropiedadesConstructor (__construct)Destructor (__destruct)Repaso: calculadora simple4Herencia
Herencia básicaLa palabra clave parent::Sobrescritura de métodosLa palabra clave finalClases abstractasRepaso - Jerarquía de empleados7Encapsulación
Público, protegido, privadoModificadores de acceso en profundidadGetters y settersOcultación de la informaciónPromoción del constructor (8.0)Repaso: sistema de registros de estudiantes10Conceptos avanzados de OOP
Composición vs. herenciaInyección de dependenciasClases anónimasEnums (PHP 8.1)Fibras (PHP 8.1)Análisis profundo de la clonación de objetosGeneradores e iteradores13Patrones de diseño Parte 2
Patrón CommandPatrón AdapterPatrón DecoratorPatrón Template MethodPatrón StatePatrón CompositePatrón Repository2Namespaces y carga automática
Introducción a los NamespacesLa palabra clave useEstándar de carga automática PSR-4Autoloader de ComposerRepaso: proyecto organizado5Interfaces y contratos
Introducción a las interfacesImplementación de interfacesImplementación de múltiples interfacesInterfaces vs. clase abstractaTipado con interfacesRepaso - Calculadora de formas8Métodos mágicos
Introducción a los métodos mágicos__toString y __debugInfo__get, __set, __isset, __unset__call y __callStatic__clone y clonación de objetos__serialize y __unserializeRepaso: colección personalizada3Propiedades de clase
Propiedades de instancia vs. estáticasConstantes en clasesMétodos y propiedades estáticosPropiedades privadas y protegidasPropiedades de solo lectura (PHP 8.1)Repaso: gestor de cuentas bancarias6Polimorfismo
Repaso de la sobrescritura de métodosPolimorfismo mediante interfacesAnotaciones de tipo y tipos uniónEnlace estático tardíoRepaso: procesador de pagos9Traits
Introducción a los TraitsUso de múltiples TraitsResolución de conflictos entre TraitsMétodos abstractos en TraitsTraits frente a la herencia12Patrones de diseño, parte 1
Introducción a los patrones de diseñoPatrón SingletonPatrón FactoryPatrón ObserverPatrón StrategyPractica por tu cuenta: Compilador de PHP online