Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:composer内容并不多, 也不难
文件地址:(vendor
文件夹部分是通过composer
下载)
1.Model.php
代码:
<?php
namespace app\controller;
class Model{
public static function getData(){
return "这是".__METHOD__."的数据!!!";
}
}
2.Goods.php
代码:
<?php
namespace api;
class Goods
{
public static function getData(){
return "这是".__METHOD__."的数据";
}
}
3.index.php
代码:
<?php
//加载composer的authload.php文件
require __DIR__."/vendor/autoload.php";
//取别名
use app\controller\Model;
use api\Goods;
//客户端调用
echo Model::getData();
echo "<hr>";
echo Goods::getData();
composer.json
文件的files, classmap, psr-4写法演示1.files
:可以加载任意位置的类文件
{
"autoload": {
"files": [
"app/controller/Model.php",
"api/Goods.php"
]
}
}
2.classmap
:类映射 , 实现类的批量注册
{
"autoload": {
"classmap": ["app/controller", "api"]
}
}
3.psr-4
:格式要以(类的命名空间: 类所在的路径目录) 进行绑定, 命名空间最后必须以”\\”空间分隔符结尾
备注:符合psr-4
规范
{
"autoload": {
"psr_4": {
"app\\controller\\": "app/controller",
"api\\": "api"
}
}
}
1.每次编辑完composer.json
中的autoload
字段的内容后, 就必须在终端执行composer dumpautoload
才能生效
2.classmap
:写法避免同一路径下的类文件的路径重复编写,减少代码量
3.psr-4
:比较符合商业规范写法,且容易查找命名空间和文件地址