首页 / PHP / PHP中类自动加载实例解析
PHP中类自动加载实例解析
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP中类自动加载实例解析,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1918字,纯文字阅读大概需要3分钟。
内容图文
在php中需要用到另一个文件中的php代码是时,可以用include、include_once、require、require_once去引入类文件。其中require和include的区别是语法严格度的区别:当引入的文件发生错误时,使用include的语法会报错,但其后面的语句会还会继续执行。而require在发生错误后则会停止执行。include和include_once的的区别在于:include在使用时,存在一次就会引入一次,而include_once当引入相同的文件时则会仅仅引入一次。
一般在使用中由于可能会包含大量的引入文件,这时就需要写大量的include/require语句。这样极为不便,针对这种情况,可以使用自动加载。
1.使用__autoload()魔术函数:
当程序“需要一个类“时,系统会自动调用该函数,该函数需要 我们自己定义:
function __autoload($className){ require "需要引入文件的路径(不包含文件名)".$className.".php"; }
变量$className是在自动调用该函数是传入的类名。
2.使用spl_autoload_register()函数:
用它声明多个可以用来代替__autoload()函数,
spl_autoload_register("函数名1");
spl_autoload_register("函数名2");............这样的作用其实是和__autoload()的作用一样;
//此处声明三个自动加载函数名, spl_autoload_register('auto1'); spl_autoload_register('auto2'); spl_autoload_register('auto2'); //接下来需要定义所声明的函数。 function auto1($className){ $file="文件路径".$className.".php"; if(file_exists($file)){ require $file; } } function auto2($className){ $file="文件路径".$className.".php"; if(file_exists($file)){ require $file; } } function auto2($className){ $file="文件路径".$className.".php"; if(file_exists($file)){ require $file; } }
在使用该方法时,需要类时,会按照声明的顺序先从auto1()调用,如果有的话就引入,如果不存在,就到下一个函数调用......
spl_autoload_register()与__autoload()的区别在于,spl_autoload_register()能够从不同文件路径中引入不同的文件。并且当文件中注册了spl_autoload_register()后方法__autoload()自动无效。
相关推荐:
PHP实现自动加载功能
PHP实现路由和类自动加载
PHP实现自动加载相关函数
以上就是PHP中类自动加载实例解析的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的PHP中类自动加载实例解析全部内容,希望文章能够帮你解决PHP中类自动加载实例解析所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。