• php __autoload函数 加载类文件


    面向对象的开发时,大家肯定都会遇到这样的问题,就是加载文件,一般都是加文件的头部inclue_once,require一大堆,看着很让人烦。当然你可以自己写程序来加载。php5以后引入了__autoload这个函数,可以帮我们解决这个问题。

    有人说__autoload会影响性能,用这个函数的确会影响性能,但是并不像有些人说的那样,影响的很厉害。include,require重复加载也会影响性能。现在很多框架也用__autoload,例如:thinkphp,yii都用了这个函数。用include等产生的人力成本与用__autoload产生的性能成本,我宁愿选择第一个。

    建二个文件,test.php,test1.php,这二个文件在同一目录下

    1. //以下是test.php内容  
    2.   
    3. <?php  
    4. class test {  
    5.     public function show(){  
    6.         echo "test";  
    7.     }  
    8. }  
    9. ?>  
    10. ---------------------------上下是二个文件----------------------------------  
    11. //以下是test1.php的内容  
    12.   
    13. <?php  
    14. function __autoload($class_name) {  
    15.     require_once $class_name . '.php';  
    16. }  
    17.   
    18. $test  = new test();  
    19. $test->show();  //显示是test  
    20. ?>  

    在这里如果不用__autoload这个函数的话,就必须加载这个文件,include test.php要把这句加到头部。

    __autoload 函数,它会在试图使用尚未被定义的类时自动调用。通过调用此函数,脚本引擎在 PHP 出错失败前有了最后一个机会加载所需的类。

  • 相关阅读:
    Gram 矩阵性质及应用
    Gram 矩阵性质及应用
    经典公开课、好的学习网站
    经典公开课、好的学习网站
    机器学习、深度学习经典课程
    机器学习、深度学习经典课程
    机器学习竞赛(代码)
    机器学习竞赛(代码)
    数学类网站、代码(Matlab & Python & R)
    数学类网站、代码(Matlab & Python & R)
  • 原文地址:https://www.cnblogs.com/moqiang02/p/4061449.html
Copyright © 2020-2023  润新知