• PhalAPI学习笔记 ——— 第三章细致讲解使用PSR-4规范自定义你的命名空间


    PhalAPI学习笔记 ——— 第三章细致讲解使用PSR-4规范自定义你的命名空间

    前言

    公司业务需要转学PHP,而PHP中一个功能强大且生态链完整的PHP接口框架 PhalAPI
    值得大家去学习,本学习笔记持续更新!
    虽然官方文档写的十分明白,以及CSDNPhalAPI框架内容也少之又少。
    因此,以自我踩坑为基础,提供一个更为精简的学习笔记,本学习笔记将会省略部分安装及简单操作。

    什么是PSR-4

    简单来说就是一种规范,autoload自动加载规范,定义命名空间与路径的映射关系

    应用场景

    • 一般用于Composer依赖管理中配置项,配置自动加载路径,从而满足映射关系

    PSR-4解析

    打开PhalAPI下:composer.json文件。

    找到autoload项配置 (默认状态)

    	"autoload" : {
    		"files" : [
    			"src/app/functions.php",
    		],
    		"psr-4" : {
    			"App\\" : "src/app",
    			"Portal\\" : "src/portal",
    		}
    	},
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    其中可以观察到下面拥有psr-4的配置项下有着两项配置!

    • App : src/app

    • Portal : src/portal

    App 以及 Portal则是外部命名空间名称 参数值则为:实际路径位置

    上图!
    图片

    由此可以推断出,外部命名空间App的映射地址则是src/app
    portal以此类推

    小疑问

    问:我们既然知道规律了,但这个命名空间在何处使用呢?

    答:观察App/Api/任意php文接口 或Portal/Api/任意php接口,观察仔细变化在这里插入图片描述
    在这里插入图片描述

    结论

    经过两轮筛查发现,在composer中 autoload的命名空间必须与该映射地址下的php文件的命名空间一致

    那么我们直接开始自定义我们的命名空间和路径映射吧!

    自定义命名空间

    复制一份App下所有文件,更名为demo同时更改php接口文件命名空间
    在这里插入图片描述

    修改composer.json中的autoload

    	"autoload" : {
    		"files" : [
    			"src/app/functions.php",
    			"src/app/common.php"
    		],
    		"psr-4" : {
    			"App\\" : "src/app",
    			"Portal\\" : "src/portal",
    			"Demo\\" : "src/demo",
    		}
    	},
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    还没完,重点来了,你现在跑该接口是跑不通的,我们还需要在 composer 输入 composer update 修改自动注入

    随后浏览器跳转:http://127.0.0.1/phalapi/public/?s=Demo.HelloWorld.Index

    结果

    在这里插入图片描述

    结束语

    关于 PhalAPI学习笔记 ——— 第三章细致讲解使用PSR-4规范自定义你的命名空间 就讲到这里,对你有帮助的话!

    • 点赞
    • 收藏

    谢谢你的观看!

  • 相关阅读:
    linux下搭建oh-my-zsh环境
    【JavaWeb】一篇承载Ajax、Axios、Json的学习笔记~
    网络传输 Tips 小记
    香港服务器如何做负载均衡?
    MATLAB算法实战应用案例精讲-【目标检测】单目3D目标检测
    IDEA 快捷键记录【个人向】
    LeetCode 202. 快乐数
    OpenFeign
    普华永道与 OpenAI 合作,为10万员工提供 ChatGPT 服务
    鸿运主动安全云平台任意文件下载漏洞
  • 原文地址:https://blog.csdn.net/qq_33638188/article/details/125539311