教你發(fā)布自己的composer包(步驟詳解)

本篇文章給大家?guī)砹岁P于composer的相關知識,其中主要跟大家聊一聊,怎么發(fā)布自己的composer包,步驟很詳細哦~感興趣的朋友下面一起來看一下吧,希望對大家有幫助。

準備

  1. Github賬號
  2. Github賬號
  3. 安裝好git
  4. 安裝好composer

步驟

創(chuàng)建并拉取一個倉庫

Github右上角+號,點 New repository。創(chuàng)建完成后使用git拉取到本地。

composer初始化

自動創(chuàng)建

使用composer init命令進行初始化

composer init
λ?composer?init   ??Welcome?to?the?Composer?config?generator????歡迎來到Composer配置生成器    This?command?will?guide?you?through?creating?your?composer.json?config.?這個命令將指導您創(chuàng)建編寫器。json配置。  Package?name?(<vendor>/<name>)?[z/lattice-php]:????//?你的包名,不可以重復 Description?[]:?//?你的描述 Author?[Chenilove?,?n?to?skip]:?//?作者 Minimum?Stability?[]:?//?版本穩(wěn)定性?例如?dev?stable?等 Package?Type?(e.g.?library,?project,?metapackage,?composer-plugin)?[]:?//?包類型 License?[]:?MIT?//?協(xié)議  Define?your?dependencies.  Would?you?like?to?define?your?dependencies?(require)?interactively?[yes]??你想交互式地定義你的依賴關系嗎 Search?for?a?package: Would?you?like?to?define?your?dev?dependencies?(require-dev)?interactively?[yes]??您想交互式地定義您的開發(fā)依賴項(require-dev)嗎 Search?for?a?package: Add?PSR-4?autoload?mapping??Maps?namespace?"ZLatticePhp"?to?the?entered?relative?path.?[src/,?n?to?skip]:?添加PSR-4自動加載映射?將命名空間“ZLatticePhp”映射到輸入的相對路徑。  { ????"name":?"z/lattice-php", ????"license":?"MIT", ????"autoload":?{ ????????"psr-4":?{ ????????????"ZLatticePhp":?"src/" ????????} ????}, ????"authors":?[ ????????{ ????????????"name":?"Chenilove", ????????????"email":?"2665468087@qq.com" ????????} ????], ????"require":?{} }  Do?you?confirm?generation?[yes]??確定生成嗎? Generating?autoload?files Generated?autoload?files PSR-4?autoloading?configured.?Use?"namespace?ZLatticePhp;"?in?src/ Include?the?Composer?autoloader?with:?require?'vendor/autoload.php';</name></vendor>

手動創(chuàng)建

本質上composer init命令是在根目錄創(chuàng)建一個composer.json,我們完全可以自己手動創(chuàng)建

{ ????"name":?"zmxy/lattice", ????"description":?"PHP生成點陣圖組件.教程:https://github.com/Chenilove/LatticePHP", ????"license":?"MIT", ????"autoload":?{ ????????"psr-4":?{ ????????????"Lattice":?"src/" ????????} ????}, ????"authors":?[ ????????{ ????????????"name":?"Chenilove", ????????????"email":?"2665468087@qq.com" ????????} ????], ????"minimum-stability":?"stable", ????"require":?{ ????????"php":?"&gt;=7.1.0" ????} }

autoload自動加載

autoload這個選項很重要,這里規(guī)定了命名空間。假設你想再加一個命名空間,你可以這樣做

"autoload":?{ ????????"psr-4":?{ ????????????"Lattice":?"src/"??????????????????解釋:?"命名空間":?"包的相對路徑", ????????} ????},

每次修改得使用命令刷新

composer dump-autoload

創(chuàng)建代碼

這里對應上面的autoload->psr-4里面的配置,先創(chuàng)建一個src目錄,然后在里面寫你的代碼。

namespace?Lattice;  /** ?*?Class?Lattice ?*/ class?Lattice { ????public?function?index() ????{ ????????echo?"嘿嘿嘿"; ????} }

提交代碼到Github

使用git提交代碼到Github倉庫

提交到packagist

  1. 先復制Github倉庫地址(例如:Github賬號)
  2. 打開Github賬號,點擊右上角的Submit
  3. 將倉庫地址填入Repository URL,然后點擊Check
  4. 最后回到Github,Release一個版本,packagist就能自動更新
  5. 到此已經(jīng)成功發(fā)布了一個composer包,每次Release一個版本時,packagist都會自動更新。

推薦學習:《Github賬號

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享