快捷搜索:

PHP命名空间与自动加载类详解_php技巧_脚本之家

2019-12-22 作者:2019精准正版资料   |   浏览(134)

正文实例呈报了PHP命名空间与机关加载类。分享给大家供大家参照他事他说加以考查,具体如下:

明天自家要给大家介绍的是PHP的命名空间 和 自动加载类

自己先轻便的告辞演示 在献身一同

哪些是自行加载类?

可能大家都应当驾驭__autoload 这几个魔术点子

$db = new DB();function __autoload{echo $className;exit();//在这个里面引用类}

在行使这几个类只可以加载一次,在好些个时候大家要引进的四处贰个类这时怎么做吧!

牛逼的php大神们 出了个新措施 来消除 那些标题 请看就是其少年老成函数

spl_autoload_register() 满足了此类必要。 它实际创立了 autoload 函数的行列,按定义时的次第各种实施。相比之下, __autoload() 只能够定义二遍。

本条函数的用法有繁多 这里先给我们介绍生龙活虎种接纳办法

function load1{echo 1;require $className . '.php';}spl_autoload_register; //将load1函数注册到自动加载队列中。$db = new DB(); //找不到DB类,就会自动去调用刚注册的load1函数了//php 5.3之后,也可以像这样支持匿名函数了。spl_autoload_register{if (is_file('./lib/' . $className . '.php')) {require './lib/' . $className . '.php';}});

多个spl_autoload_register的使用

固然有引进 若无 没宛假如了,哪来的假诺

function load1{ echo 1; if (is_file { require $className . '.php'; }}function load2{ echo 2; if (is_file('./app/' . $className . '.php')) { require './app/' . $className . '.php'; }}function __autoload{ echo 3; if (is_file('./lib/' . $className . '.php')) { require './lib/' . $className . '.php'; }}//注册了3个spl_autoload_register;spl_autoload_register;spl_autoload_register;$db = new DB(); //DB就在本目录下$info = new Info(); //Info 在/lib/Info.php

我们能够打字与印刷spl_autoload_functions()函数,来显示生机勃勃共注册了略略个电动加载:

var_dump(spl_autoload_functions;//数组的形式输出array 0 => string 'load1' 1 => string 'load2' 2 => string '__autoload' 

取名空间

五个php文件里 是不辅助 new 五个名字的

以那个时候候我们就能够用的到命名空间了

namespace app;class new{public function ten(){echo "85";}}namespace hii;class new{public function ten(){echo "85";}}

spl_autoload_register机动加载+namespace命名空间 的运用

AutoLoadingloading

上面就是一个自动加载的核心思想方法。下面我们就来spl_autoload_register来注册这个函数:由于我们是采用PSR-O方式来定义namespace的命名的,所以很好的定位到这个文件的在哪个目录下了。很爽。对不对。APPAndroidNamenamespace AppAndroid;class Name{public function __construct(){echo __NAMESPACE__ . "
";}public static function test(){echo __NAMESPACE__ . ' static function test 
';}}

故此就能够超级轻便找到文件,并出口:

Lib static function testAppAndroid static function testAppIos static function test

好了。基本的事物就讲罢了.

更加的多关于PHP相关内容感兴趣的读者可查阅本站专项论题:《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP运算与运算符用法总括》、《PHP互连网编制程序工夫总括》、《PHP数组操作能力大全》、《php字符串用法计算》、《php+mysql数据库操作入门教程》及《php多如牛毛数据库操作技艺汇总》

但愿本文所述对大家PHP程序设计有所扶助。

本文由正版香港马报免费资料发布于2019精准正版资料,转载请注明出处:PHP命名空间与自动加载类详解_php技巧_脚本之家

关键词: