¿Cómo cargar clases en PHP?

Las clases de carga de PHP se utilizan para declarar su objeto, etc. en aplicaciones orientadas a objetos. El analizador de PHP lo carga automáticamente, si está registrado con la función spl_autoload_register() . El analizador de PHP tiene la menor posibilidad de cargar la clase/interfaz antes de emitir un error.

Sintaxis:

spl_autoload_register(function ($class_name) {
  include $class_name . '.php';
});

La clase se cargará desde su correspondiente archivo “ .php” cuando entre en uso por primera vez.

Carga automática

Ejemplo:

PHP

<?php
    spl_autoload_register(function ($class_name) {
        include $class_name . '.php';
    });
    $obj = new mytest1();
    $obj2 = new mytest2();
    echo "Objects of mytest1 and mytest2 "
        + "class created successfully";
?>

Producción:

Objects of test1 and test2 class created successfully.

Nota: Si no se encuentra el archivo “.php” correspondiente que tiene definición de clase, se mostrará el siguiente error.

Warning: include(): Failed opening 'test10.php' for 
inclusion (include_path='C:\xampp\php\PEAR') in line 4
PHP Fatal error: Uncaught Error: Class 'test10' not found.

Carga automática con manejo de excepciones

Ejemplo:

PHP

<?php
    spl_autoload_register(function($className) {
          $file = $className . '.php';
          if (file_exists($file)) {
             echo "$file included\n";
             include $file;
          } 
          else {
             throw new Exception("Unable to load $className.");
          }
    });
    try {
      $obj1 = new test1();
      $obj2 = new test10();
    } catch (Exception $e) {
      echo $e->getMessage(), "\n";
    }
?>

Producción:

Unable to load test1.

Publicación traducida automáticamente

Artículo escrito por saurabhtibrewal5 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *