要在ThinkPHP后台插件管理页看到“安装”按钮并成功运行插件,必须同时满足目录结构、入口文件命名、命名空间、继承关系和$info数组五项硬性条件——缺一不可,否则插件根本不会被系统扫描到。

创建插件目录与入口文件
进入项目根目录下的addons文件夹(若不存在请手动创建),新建名为hello_world的子目录。
在addons/hello_world目录内,新建一个纯PHP文件,文件名必须严格为hello_world.php(全小写+下划线+“.php”后缀)。
打开hello_world.php,写入基础框架代码,注意命名空间必须以addons\开头,类名必须与文件名一致(不含.php):
<?php
namespace addons\hello_world;
use think\addons\Addon;
class hello_world extends Addon
{
// 插件信息数组,系统识别插件的唯一凭证
public $info = [
'name' => 'hello_world',
'title' => 'Hello World 示例插件',
'identifier' => 'hello_world.lwwan.plugin',
'version' => '1.0.0',
'author' => 'lwwan'
];
public function install()
{
return true;
}
public function uninstall()
{
return true;
}
}
立即学习“PHP免费学习笔记(深入)”;
【关键点】文件名、目录名、命名空间、类名四者必须完全一致(全小写+下划线),漏掉任何一项都会导致插件不被扫描;$info数组中identifier和version字段缺失,后台列表直接不显示该插件。
检查运行环境与缓存
确保项目根目录下的runtime/目录对Web服务器进程用户(如www-data或nginx)有写权限,chmod -R 775 runtime是最稳妥的选择。
执行命令清除插件缓存:
php think clear:plugin
如果未安装think-multi-app扩展或框架版本不是TP6.x,插件机制将无法启用——此时即使代码正确,后台也不会出现插件列表。
验证插件是否注册成功
第一步:访问后台「插件管理」页面,确认列表中已出现「Hello World 示例插件」条目,且状态为「未安装」。
第二步:点击「安装」按钮,页面应跳转并提示「安装成功」;若提示「安装失败」,立即检查runtime/是否可写、install()方法是否显式返回true、以及是否执行过缓存清理。
第三步:刷新后台页面,插件状态应变为「已启用」;此时插件已正式注册进系统,后续可为其绑定路由、添加控制器或响应钩子事件。



















