laravel 开发本地扩展包
大家好!我是猪哥,自从zy-editor发布后获得了大家的一致好评!今天来教大家如何开发一个扩展包
首先 在https://gitee.com/ 上面创建一个仓库,然后拉取到本地

点击复制 然后开始拉取仓库 比如我的仓库地址是:https://gitee.com/flydream8/zy-test.git
git clone https://gitee.com/flydream8/zy-test.git

现在我们拉下来的是一个空仓库,我们开始创建 composer.json

进入仓库目录 按照下面提示输入

composer init 的结果解释:
说明地址:https://docs.phpcomposer.com/04-schema.html
https://docs.phpcomposer.com/04-schema.html#authors
https://docs.phpcomposer.com/02-libraries.html
命令解释案例
name项目名称pack/test
description项目描述(不要中文)this is pack test
type安装类型默认为 library (4种类型:library,project,metapackage,composer-plugin)
license许可协议MIT
authors作者{ “name”: “json”,“email”: “json_yin@fionacos.com” }
minimum-stability版本dev、alpha、beta、RC、stable
composer.json 文件生成后,我们用phpstrom 打开项目 创建src目录
如图

src目录下创建Service.php (创建业务执行代码)
代码如下:
<?php
namespace Zy;
class Service
{
public function __construct()
{
}
public function hello() {
return "hello zy-editor";
}
}下面开始修改 composer.json 添加autoload
{
"name": "zy/test",
"description": "zy package test",
"license": "MIT",
"authors": [
{
"name": "燕雀留声",
"email": "1551909095@qq.com"
}
],
"minimum-stability": "dev",
"autoload":{
"psr-4":{
"Zy\\":"src/"
}
},
"require": {}
}注意 autoload Zy 是你定义的命名空间,可以根据自己的需要命名这里只是演示
我们添加完毕后,执行 composer dump-autoload
如图:

然后我们在项目根目录创建一个 test.php 测试下
目录结构如下:

我们的test.php 代码如下:
<?php require_once __DIR__ .'/vendor/autoload.php'; $obj = new \Zy\Service(); $msg = $obj->hello(); var_dump($msg);
我们在命令行下测试下:如图所示

我们可以看到代码已经成功运行,我们定义的 命名空间 Zy 也已经生效
如果没什么问题,把代码推送到gitee远程仓库里,gitignore 设置忽略 vendor, .idea

如果不小心把 .idea 加入了缓存 我们可以使用如下命令清除掉 在add
git rm -rf --cached .idea/

一切工作准备就绪我们开始提交代码 输入
git commit -m "first"

开始提交之前 我们先去gitee 获取仓库地址

点击复制 ,输入如下命令创建远程分支默认是master 下面的仓库地址换成你自己的
git remote add origin https://gitee.com/flydream8/zy-test.git
注意如果你的代码是从远程拉下的这一步可以跳过 直接push即可
空仓库需要执行上面代码
最后push 下就成功了
git push origin -u master

下面我们把包按照到laravel项目中:
在laravel 根目录下 打开 composer.json
在 require 节点下面加入下面代码
"repositories": {
"0": {
"type": "vcs",
"url": "https://gitee.com/flydream8/zy-test.git"
},
"packagist": {
"type": "composer",
"url": "https://mirrors.aliyun.com/composer/"
}
},
然后我们执行 composer require zy/test
zy/test 是你开发扩展包的name名称
可以看到下图我们已经成功把扩展包安装到laravel

接下来就要看各位同学到创造能力了,感谢大家的阅读
