spl_autoload_unregister function

spl_autoload_unregister function သည် ယခင်က မှတ်ပုံတင်ထားသော autoload function တစ်ခုကို SPL stack မှ ဖယ်ရှားရန် ခွင့်ပြုသည်။ ၎င်းသည် parameter အဖြစ် autoloaders စာရင်းမှ ဖယ်ရှားရန်လိုအပ်သော callback function ကို လက်ခံသည်။

ဝါကျဖွဲ့စည်းပုံ

phpspl_autoload_unregister(callable $autoload_function);

ဥပမာ

Autoloader တစ်ခုကို မှတ်ပုံတင်ပြီး ထို့နောက် ဖယ်ရှားကြည့်ရအောင်။

php<?php
  function my_autoload($class) {
    include 'classes/' . $class . '.php';
  }

  spl_autoload_register('my_autoload');
  spl_autoload_unregister('my_autoload');
?>

ယခုအခါ my_autoload function သည် မသတ်မှတ်ရသေးသော class တစ်ခုကို autoload လုပ်ရန် ကြိုးစားသည့်အခါတွင် နောက်ထပ် ခေါ်ယူမည် မဟုတ်တော့ပါ။

ဥပမာ

Autoloader ဖယ်ရှားမှု အောင်မြင်မှုကို စစ်ဆေးခြင်း။

php<?php
  function autoload_one($class) {
    echo "Trying to load $class\n";
  }

  spl_autoload_register('autoload_one');
  $res = spl_autoload_unregister('autoload_one');
  var_dump($res);
?>

ကုဒ်ကို run လိုက်သည့် အဖြေ။

phptrue

ဥပမာ

မရှိသော autoloader တစ်ခုကို ဖယ်ရှားရန် ကြိုးစားခြင်း။

php<?php
  $res = spl_autoload_unregister('nonexistent_function');
  var_dump($res);
?>

ကုဒ်ကို run လိုက်သည့် အဖြေ။

phpfalse

ဒါတွေလဲ ကြည့်ပါ

  • spl_autoload_register function,
    သည် autoloader ကို မှတ်ပုံတင်ပေးသည်
  • spl_autoload_functions function,
    သည် autoloaders များကို ပြန်ပေးသည်
  • spl_autoload_call function,
    သည် autoloader ကို ခေါ်ယူသည်