Kazi spl_autoload_register
Kazi spl_autoload_register inasajili kazi iliyopewa kama utekelezaji wa mbinu ya upakiaji otomatiki wa madarasa. Wakati PHP inapokutana na darasa lisilojulikana, inaita kwa mpangilio kazi zote zilizosajiliwa za upakiaji otomatiki, ikizipitisha jina la darasa. Kigezo cha kwanza ni kazi ya callback kwa upakiaji otomatiki, kigezo cha pili (si lazima) - je, kutupa isipokuwa kwa hitilafu, kigezo cha tatu (si lazima) - je, kuongeza kazi mwanzoni mwa foleni.
Syntax
spl_autoload_register(callable $autoload_function [, bool $throw = true [, bool $prepend = false ]]);
Mfano
Usajili rahisi wa kazi ya upakiaji otomatiki:
<?php
function my_autoloader($class) {
include 'classes/' . $class . '.php';
}
spl_autoload_register('my_autoloader');
// Sasa inawezekana kuunda vitu bila include ya wazi
$obj = new MyClass();
?>
Mfano
Matumizi ya kazi isiyo na jina kwa upakiaji otomatiki:
<?php
spl_autoload_register(function ($class) {
include 'lib/' . str_replace('\\', '/', $class) . '.php';
});
$obj = new Some\Namespace\MyClass();
?>
Mfano
Usajili wa kazi nyingi za upakiaji otomatiki:
<?php
spl_autoload_register('autoloader1');
spl_autoload_register('autoloader2');
spl_autoload_register('autoloader3', true, true); // Ongeza mwanzoni mwa foleni
// PHP itaita kazi kwa mpangilio: autoloader3, autoloader1, autoloader2
$obj = new MyClass();
?>
Angalia pia
-
kazi spl_autoload_functions,
ambayo inarudisha vipakuliaji otomatiki -
kazi spl_autoload_unregister,
ambayo inaondoa kipakuliaji otomatiki -
kazi class_exists,
ambayo inakagua darasa