ফাংশন spl_autoload_register

ফাংশন spl_autoload_register একটি প্রদত্ত ফাংশনকে ক্লাস অটোলোডিং পদ্ধতি হিসাবে নিবন্ধন করে। যখন PHP একটি অনির্ধারিত ক্লাসের সম্মুখীন হয়, এটি ক্রমানুসারে সমস্ত নিবন্ধিত অটোলোড ফাংশন কল করে, তাদের ক্লাসের নাম প্রেরণ করে। প্রথম প্যারামিটার - অটোলোডিংয়ের জন্য কলব্যাক ফাংশন, দ্বিতীয় প্যারামিটার (ঐচ্ছিক) - ত্রুটির 경우 এক্সেপশন নিক্ষেপ করা হবে কিনা, তৃতীয় প্যারামিটার (ঐচ্ছিক) - কিউ-এর শুরুতে ফাংশন যোগ করা হবে কিনা।

সিনট্যাক্স

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

উদাহরণ

অটোলোড ফাংশনের সাধারণ নিবন্ধন:

php<?php
  function my_autoloader($class) {
    include 'classes/' . $class . '.php';
  }
  
  spl_autoload_register('my_autoloader');
  
  // এখন স্পষ্টভাবে include ছাড়াই অবজেক্ট তৈরি করা সম্ভব
  $obj = new MyClass();
?>

উদাহরণ

অটোলোডিংয়ের জন্য অ্যানোনিমাস ফাংশন ব্যবহার করা:

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

উদাহরণ

একাধিক অটোলোড ফাংশন নিবন্ধন করা:

php<?php
  spl_autoload_register('autoloader1');
  spl_autoload_register('autoloader2');
  spl_autoload_register('autoloader3', true, true); // কিউ-এর শুরুতে যোগ করুন
  
  // PHP ফাংশনগুলিকে এই ক্রমে কল করবে: autoloader3, autoloader1, autoloader2
  $obj = new MyClass();
?>

আরও দেখুন

  • ফাংশন spl_autoload_functions,
    যা অটোলোডারগুলি রিটার্ন করে
  • ফাংশন spl_autoload_unregister,
    যা একটি অটোলোডার মুছে দেয়
  • ফাংশন class_exists,
    যা একটি ক্লাস চেক করে