Funksioni spl_autoload_register

Funksioni spl_autoload_register regjistron funksionin e dhënë si zbatim i metodës së autoload-it për klasat. Kur PHP has një klasë të padefinuar, ai thërret në mënyrë sekuenciale të gjitha funksionet e regjistruara të autoload-it, duke i kaluar atyre emrin e klasës. Parametri i parë - është funksioni callback për autoload, parametri i dytë (opsional) - të hedhë apo jo përjashtim në rast gabimi, parametri i tretë (opsional) - të shtojë apo jo funksionin në fillim të radhës.

Sintaksa

phpspl_autoload_register(callable $autoload_function [, bool $throw = true [, bool $prepend = false ]]);

Shembull

Regjistrim i thjeshtë i funksionit të autoload-it:

php<?php
  function my_autoloader($class) {
    include 'classes/' . $class . '.php';
  }
  
  spl_autoload_register('my_autoloader');
  
  // Tani mund të krijohen objekte pa include të qartë
  $obj = new MyClass();
?>

Shembull

Përdorimi i funksionit anonim për autoload:

php<?php
  spl_autoload_register(function ($class) {
    include 'lib/' . str_replace('\\', '/', $class) . '.php';
  });
  
  $obj = new Some\Namespace\MyClass();
?>

Shembull

Regjistrimi i disa funksioneve të autoload-it:

php<?php
  spl_autoload_register('autoloader1');
  spl_autoload_register('autoloader2');
  spl_autoload_register('autoloader3', true, true); // Shtoje në fillim të radhës
  
  // PHP do të thërrasë funksionet në rendin: autoloader3, autoloader1, autoloader2
  $obj = new MyClass();
?>

Shihni gjithashtu