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