php psr-4 autoload

php psr-4 autoload

composer docment

1、项目根目录创建composer.json文件

demo

{
  "autoload": {
    "psr-4": {
      "app\\": "vendor",
      "component\\": "vendor/component",
    }
  }
}

2、shell命令 # composer dump-autoload会生产vendor和autoload代码结构

3、composer.json中psr-4参数

  • “app\”: "vendor"表示将命名空间vendor绑定到app上
  • “component\”: "vendor/component"表示将命名空间vendor/component绑定到component上

4、demo

在vendor/component文件中创建类Test.php

namespace component;//该文件的路径vendor/component,但是在psr-4参数中设置了绑定,所有namespace component等价namespace vendor/component
class Test{
	public function getNameSpace()
	{
		echo "NameSpace = ".__NAMESPACE__."<br/> ClassName = ".__CLASS__."<br/> Method = ".__METHOD__;
	}
}

其他类中使用Test类

namespace app\module\Demo
use component\Test;//等价于use vendor/component\Test
echo (new Test())->getNameSpace();

输出NameSpace=component ClassName= component/Test Method=component/Test:: getNameSpace

ps:composer.json中psr-4不设置任何参数无法实现自动加载,详情看autoload_statice.php文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值