MENU
  • FUNBREWについて
    • 営業日・営業時間
  • 事業内容
    • ITサポート
    • ウェブサイト制作
    • システム開発
    • プログラミングレッスン
  • 対応エリア
  • FAQ
  • パートナー募集
  • お問い合わせ
  • 記事一覧
  • EN
  • JA
FUNBREW
あなたの会社のIT顧問
  • FUNBREWについて
    • 営業日・営業時間
  • 事業内容
    • ITサポート
    • ウェブサイト制作
    • システム開発
    • プログラミングレッスン
  • 対応エリア
  • FAQ
  • パートナー募集
  • お問い合わせ
  • 記事一覧
  • EN
  • JA
FUNBREW
  • FUNBREWについて
    • 営業日・営業時間
  • 事業内容
    • ITサポート
    • ウェブサイト制作
    • システム開発
    • プログラミングレッスン
  • 対応エリア
  • FAQ
  • パートナー募集
  • お問い合わせ
  • 記事一覧
  • EN
  • JA

PHPのライブラリ管理ツール、composerのパッケージを作成して公開する

2022 12/22
技術ブログ
2022年12月22日 2022年12月22日

FUNBREWの金井です。

最近は技術スタックをLaravelに絞っているため、PHPで再利用したいコードが増えてきました。

composerは以前からずっと利用していますが、自分でパッケージを作ろうとしたことはありません。

今回はcomposerパッケージを作成して公開する方法をご紹介します。

目次

まずは手順の確認

composerのパッケージを公開するのは難しくありません。

ですが、調査をし始めたときは流れを理解しておらず、難しそうに感じたので、先に流れについてご紹介します。

STEP
リポジトリの作成

Githubなどで公開リポジトリを作成します。

ここに作成するライブラリのソースコードをプッシュしていきます。

STEP
プロジェクトの作成

composer initで雛形を作成し、コードを書いていきます。

STEP
コードのプッシュ

書いたコードを公開リポジトリにプッシュします。

STEP
パッケージの登録

https://packagist.org/にパッケージのURLを登録します。

STEP
パッケージのインストール

パッケージを使いたいプロジェクトでcomposer requireします。

リポジトリの作成

リポジトリの作成は特に難しいことはなく、公開リポジトリで作成するだけです。

パッケージの名前とリポジトリの名前は同じである必要はなく、composer.json で指定することができます。

プロジェクトの作成

ローカル環境でプロジェクトを作成します。

composer init をすると対話形式で詳細を聞いてくるので、パッケージ名だけ指定して、あとは全てEnterで進めました。

(詳細などがはまた機会があったら説明したいと思います。)

設定した内容はcomposer.json に記載されるので、後から変更するときはこのファイルを編集します。

コードのプッシュ

動作を確認するために、何かしらのコードを作成してプッシュする必要があります。

まずはパッケージが公開できることを見たかったので、私の場合はこのような至極単純なファイルを1つ作成しました。

https://github.com/taiki14175/hello-composer/blob/main/src/Hello.php

パッケージの登録

作成したライブラリをパッケージとして登録します。

下記のサイトからパッケージの登録が可能です。

https://packagist.org/

初めてパッケージを登録するときは、ユーザー登録が必要になります。

ログイン後、Submitのボタンからパッケージの登録画面へ移動できます。

パッケージの登録には先ほど作成したリポジトリのURLを入力します。

パッケージのインストール

パッケージの登録が終わったら、利用したいプロジェクトで composer require をします。

私がテストで作ったパッケージだと以下のようになります。

composer require funbrew/hello-composer

あとは任意の場所で呼び出して、動作するか確認しましょう。

最後に

ざっくりではありますが、自分のメモも含めてcomposerパッケージの作成方法について記載しました。

次はプライベートのパッケージ作成について書いてみたいと思います。

技術ブログ
  • 一生使えるIT技術を学ぶ。現役エンジニアが考える勉強して損のない技術とは?
  • 【2022年12月25日現在】一発でUbuntu 22.04にDockerをインストールする方法

金井 泰樹のアバター 金井 泰樹 FUNBREW代表

FUNBREWの代表。
新卒からIT系の企業に勤め、SES、スマホアプリ開発、自社開発の会社で経験を積んで独立。
新卒時代にエンジニアとしてのキャリアを積むのに失敗し、その後に苦労した経験から、現在教育事業の立ち上げを準備中。
強みはウェブシステム開発全般と迅速なレスポンスです。

この著者の記事一覧へ

関連記事

  • Laravel Duskでエラーになったテストだけ実行する
    2022年12月30日 2023年1月6日
  • 【2022年12月25日現在】一発でUbuntu 22.04にDockerをインストールする方法
    2022年12月25日 2023年1月6日
  • 一生使えるIT技術を学ぶ。現役エンジニアが考える勉強して損のない技術とは?
    2022年12月16日 2023年1月8日
  • CSSで横方向のスクロールバーを上部につける
    2022年12月1日
  • session
    Livewireのセッション切れの挙動を変更する
    2022年9月30日 2022年11月29日
  • Laravel TelescopeでIP制限をかける
    2022年9月17日 2022年11月29日
  • Laravel
    Laravelのlivewireでpaginationが動かないとき、その2
    2022年7月25日 2022年11月29日
  • error
    Laravelで発生する、No hint path defined for [errors]の対処法
    2022年7月17日 2022年11月29日
  1. ホーム
  2. 技術ブログ
  3. PHPのライブラリ管理ツール、composerのパッケージを作成して公開する
  • FUNBREWについて
    • 営業日・営業時間
  • 事業内容
    • ITサポート
    • ウェブサイト制作
    • システム開発
    • プログラミングレッスン
  • 対応エリア
  • FAQ
  • パートナー募集
  • お問い合わせ
  • 記事一覧
  • お知らせ

© FUNBREW

目次