PHP扩展 阅读 7331
PHP扩展 第1章 创建和删除扩展

PHP扩展 第1章 创建和删除扩展

2016-07-30 • lulubin

一、新建 hello-yii2 仓库

1.1、首先在 github 上面新建一个仓库 hello-yii2

https://file.lulublog.cn/images/3/2022/08/iqOk6Q3giqH0y3oQQMVuzHr9IvVUFQ.png?sign=9efbb72624a934e33dfbd6236b67f8a9&t=6ad0f880

1.2、进入 cmd,这里我们切换至 D 盘,下载刚刚创建的 hello- yii2

https://file.lulublog.cn/images/3/2022/08/k4xz5u7MXz330x9m914m9I77Z3mj74.png?sign=6206cff46b740db5db7667cdb054379f&t=6ad0f880

二、修改、提交、发布 hello-yii2 仓库

2.1、初始化 composer

方法①、用 cmd 进行初始化。切换到 hello-yii2 目录,初始化 composer

https://file.lulublog.cn/images/3/2022/08/j6FV063JXITTTIJMn330sxixne33ui.png?sign=788e422cf43dc22b825448255ebcafdf&t=6ad0f880

https://file.lulublog.cn/images/3/2022/08/zg4R3sJ2H77768z8qsRlvd4Jr777Sq.png?sign=e1ec40ff14998ef63f5e20c80e8073f7&t=6ad0f880

方法②、使用 gii/extension 进行初始化

https://file.lulublog.cn/images/3/2022/08/myuCbbuYcI91AbUA6c91iZbuB6J2x1.png?sign=d864e93df4105e71d9afcc22cad1b5f2&t=6ad0f880

注:将 gii 生成的文件覆盖到 hello-yii2 文件夹中

2.2、修改 composer.json 文件

https://file.lulublog.cn/images/3/2022/08/sn23e6I06ZzI36LZf40fSs3pN24SZp.png?sign=095ddd15a9f41741a9cd0274ffd1b712&t=6ad0f880

2.3、在 hello-yii2 根目录新建 Hello.php

https://file.lulublog.cn/images/3/2022/08/p2vHB0efhAHTFTj29A9xFBia3tP0Ue.png?sign=40955c65f2c685e8443be0823538723c&t=6ad0f880

2.4、修改 hello- yii2/README.md 文件

https://file.lulublog.cn/images/3/2022/08/JRZ11S1119Os1e1Uus6an0U18GIIl1.png?sign=ebd9973258ce2496d752aca5daec3743&t=6ad0f880

2.5、提交上述修改的文件到 github 仓库

https://file.lulublog.cn/images/3/2022/08/wCGN1m9pN96r76m7jZgNc9m3GANg9a.png?sign=d941497110ff214fa52becde958de45d&t=6ad0f880

在 github 发布一个初始化版本

https://file.lulublog.cn/images/3/2022/08/lYy4DgGj6zbFH931r603xZXg0FH333.png?sign=23749cf1a78ffbf94081839c9462badf&t=6ad0f880

2.6、发布 到 packagist

Packagist 是 Composer 的默认的开发包仓库。你可以将自己的安装包提交到 packagist,将来你在自己的 VCS (源码管理软件,比如 Github)仓库中新建了 tag 或更新了代码,packagist 都会自动构建一个新的开发包。这就是 packagist 目前的运作方式,将来 packagist 将允许直接上传开发包。

任何在 packagist 上发 布的包都可以直接被 Composer 使用。

① 注册账号

② 点击右上角的 Submit 按钮,之后输入你的 github 仓库地址,点击 check 之后 submit

https://file.lulublog.cn/images/3/2022/08/lMV6E8Vx88yYDd5DZdivG8xOZ59889.png?sign=f5cd5ae7f71c24abba781adedbc45966&t=6ad0f880

2.7、packagist 自动更新 github 代码

【Webhooks】

https://file.lulublog.cn/images/3/2022/08/DMXqJVE9t3s9yE39rR9ENAemAfAT6X.jpg?sign=52656bdf69d0502e0ff4b8cf9eaa7c76&t=6ad0f880

https://file.lulublog.cn/images/3/2022/08/XJiASTSh27UUuXHhB74SaaUAIp22Ia.jpg?sign=4928ad468f2bc44018451465fe9a4e31&t=6ad0f880

【已废弃】

https://file.lulublog.cn/images/3/2022/08/u6Gn676GZg7l6PKgz4Zl6pMMBMTp8w.png?sign=9601380da216726a055f0f1d088b0be7&t=6ad0f880

https://file.lulublog.cn/images/3/2022/08/v0lY5ouvxOUujKV0000h50SSNXzleh.png?sign=b110965b81b2f392163715ebb347a60c&t=6ad0f880

三、测试

3.1、进入 cmd 切换到 yii 项目

运行 composer require luluyii/hello-yii2:"*"

https://file.lulublog.cn/images/3/2022/08/Fb9AbaO6uZB7gMapNNMlNylWqFubNn.png?sign=a67947a7b40cf080f9e38dc255ec6d22&t=6ad0f880

注:下载时候记得看看自己项目根目录的 composer.json 的 "minimum-stability": "dev",是不是dev,若不是则要改

3.2、进入视图页面,输入

https://file.lulublog.cn/images/3/2022/08/V5jt6TU9offoZczFGUg8gQ4I0t4QFT.png?sign=c4873de95eaa701f1ccc0d5f78198ccc&t=6ad0f880

3.3、查看效果

https://file.lulublog.cn/images/3/2022/08/cG94GYPM77p473W4ng0wQgu46y4cy0.png?sign=e1cdfe5a4af972c6228e93a74701801d&t=6ad0f880

四、删除 yii 扩展

composer remove luluyii/hello-yii2