2013年2月27日 星期三

【php】__autoload、spl_autoload_register

今天看 yii framework 看到有趣的功能

__autoload、spl_autoload_register()
會自動找class
如:
aa_class.php
class aa {
 function doPrint() {
  echo 'hello world';
 }
}

index.php
function __autoload( $class ) {
 $file = $class . '_class.php'; 
 if ( is_file($file) ) { 
  require_once($file); 
 }
}

$obj = new aa();
$obj->doPrint();

function loadprint( $class ) {
 $file = $class . '.class.php'; 
 if (is_file($file)) { 
  require_once($file); 
 }
}
spl_autoload_register( 'loadprint' );

$obj = new aa();
$obj->doPrint();

都會印出 hello world 就不用一直include

沒有留言:

張貼留言