Rumah alat pembangunan composer Ajar anda untuk menerbitkan pakej komposer anda sendiri (langkah terperinci)

Ajar anda untuk menerbitkan pakej komposer anda sendiri (langkah terperinci)

Apr 04, 2023 pm 03:17 PM
composer

本篇文章给大家带来了关于composer的相关知识,其中主要跟大家聊一聊,怎么发布自己的composer包,步骤很详细哦~感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

准备

  1. Github账号
  2. packagist账号
  3. 安装好git
  4. 安装好composer

步骤

创建并拉取一个仓库

Github右上角+号,点 New repository。创建完成后使用git拉取到本地。

composer初始化

自动创建

使用composer init命令进行初始化

composer init
Salin selepas log masuk
λ composer init


  Welcome to the Composer config generator    欢迎来到Composer配置生成器



This command will guide you through creating your composer.json config. 这个命令将指导您创建编写器。json配置。

Package name (<vendor>/<name>) [z/lattice-php]:    // 你的包名,不可以重复
Description []: // 你的描述
Author [Chenilove <2665468087@qq.com>, n to skip]: // 作者
Minimum Stability []: // 版本稳定性 例如 dev stable 等
Package Type (e.g. library, project, metapackage, composer-plugin) []: // 包类型
License []: MIT // 协议

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]? 您想交互式地定义您的开发依赖项(require-dev)吗
Search for a package:
Add PSR-4 autoload mapping? Maps namespace "Z\LatticePhp" to the entered relative path. [src/, n to skip]: 添加PSR-4自动加载映射?将命名空间“Z\LatticePhp”映射到输入的相对路径。

{
    "name": "z/lattice-php",
    "license": "MIT",
    "autoload": {
        "psr-4": {
            "Z\\LatticePhp\\": "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 Z\LatticePhp;" in src/
Include the Composer autoloader with: require &#39;vendor/autoload.php&#39;;
Salin selepas log masuk

手动创建

本质上composer init命令是在根目录创建一个composer.json,我们完全可以自己手动创建

{
    "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": ">=7.1.0"
    }
}
Salin selepas log masuk

autoload自动加载

autoload这个选项很重要,这里规定了命名空间。假设你想再加一个命名空间,你可以这样做

"autoload": {
        "psr-4": {
            "Lattice\\": "src/"                  解释: "命名空间\\": "包的相对路径",
        }
    },
Salin selepas log masuk

每次修改得使用命令刷新

composer dump-autoload
Salin selepas log masuk

创建代码

这里对应上面的autoload->psr-4里面的配置,先创建一个src目录,然后在里面写你的代码。

namespace Lattice;

/**
 * Class Lattice
 */
class Lattice
{
    public function index()
    {
        echo "嘿嘿嘿";
    }
}
Salin selepas log masuk

提交代码到Github

使用git提交代码到Github仓库

提交到packagist

  1. 先复制Github仓库地址(例如:github.com/Chenilove/LatticePHP.gi...)
  2. 打开packagist,点击右上角的Submit
  3. 将仓库地址填入Repository URL,然后点击Check
  4. 最后回到Github,Release一个版本,packagist就能自动更新
  5. 到此已经成功发布了一个composer包,每次Release一个版本时,packagist都会自动更新。

推荐学习:《composer使用教程

Atas ialah kandungan terperinci Ajar anda untuk menerbitkan pakej komposer anda sendiri (langkah terperinci). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Ciri lanjutan komposer: alias, skrip dan penyelesaian konflik Ciri lanjutan komposer: alias, skrip dan penyelesaian konflik Jun 03, 2024 pm 12:37 PM

Komposer menyediakan ciri lanjutan, termasuk: 1. Alias: tentukan nama yang sesuai untuk pakej untuk rujukan berulang; , kekangan kepuasan dan alias pakej menyelesaikan keperluan berbeza berbilang pakej untuk versi pergantungan yang sama untuk mengelakkan konflik pemasangan.

Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP May 08, 2024 pm 02:21 PM

Jawapan: Perkhidmatan mikro PHP digunakan dengan HelmCharts untuk pembangunan tangkas dan kontena dengan DockerContainer untuk pengasingan dan kebolehskalaan. Penerangan terperinci: Gunakan HelmCharts untuk menggunakan perkhidmatan mikro PHP secara automatik untuk mencapai pembangunan tangkas. Imej Docker membenarkan lelaran pantas dan kawalan versi perkhidmatan mikro. Piawaian DockerContainer mengasingkan perkhidmatan mikro dan Kubernetes mengurus ketersediaan dan kebolehskalaan bekas. Gunakan Prometheus dan Grafana untuk memantau prestasi dan kesihatan perkhidmatan mikro, serta mencipta penggera dan mekanisme pembaikan automatik.

Apakah cara biasa untuk menukar tatasusunan kepada objek dalam PHP? Apakah cara biasa untuk menukar tatasusunan kepada objek dalam PHP? Apr 28, 2024 pm 10:54 PM

Cara menukar tatasusunan PHP kepada objek: gunakan kelas stdClass, gunakan fungsi json_decode(), gunakan perpustakaan pihak ketiga (seperti kelas ArrayObject, perpustakaan Hydrator)

Kawalan versi kod PHP dan kerjasama Kawalan versi kod PHP dan kerjasama May 07, 2024 am 08:54 AM

Kawalan versi kod PHP: Terdapat dua sistem kawalan versi (VCS) yang biasa digunakan dalam pembangunan PHP: Git: VCS yang diedarkan, tempat pembangun menyimpan salinan asas kod secara setempat untuk memudahkan kerjasama dan kerja luar talian. Subversion: VCS Berpusat, salinan unik pangkalan kod disimpan pada pelayan pusat, memberikan lebih kawalan. VCS membantu pasukan menjejaki perubahan, bekerjasama dan kembali ke versi terdahulu.

Peranan PHP CI/CD dalam projek DevOps Peranan PHP CI/CD dalam projek DevOps May 08, 2024 pm 09:09 PM

PHPCI/CD ialah amalan utama dalam projek DevOps yang mengautomasikan proses binaan, ujian dan penggunaan, dengan itu meningkatkan kecekapan pembangunan dan kualiti perisian. Saluran paip PHPCI/CD biasa terdiri daripada peringkat berikut: 1) Penyepaduan Berterusan: Setiap kali kod berubah, kod dibina dan diuji secara automatik. 2) Penggunaan berterusan: Mempercepatkan penghantaran dengan menggunakan kod yang diuji dan bersepadu secara automatik ke persekitaran pengeluaran. Dengan melaksanakan saluran paip PHPCI/CD, anda boleh meningkatkan kecekapan pembangunan, meningkatkan kualiti perisian, memendekkan masa untuk memasarkan dan meningkatkan kebolehpercayaan.

Teknologi visualisasi struktur data PHP Teknologi visualisasi struktur data PHP May 07, 2024 pm 06:06 PM

Terdapat tiga teknologi utama untuk menggambarkan struktur data dalam PHP: Graphviz: alat sumber terbuka yang boleh mencipta perwakilan grafik seperti carta, graf akiklik terarah dan pepohon keputusan. D3.js: Pustaka JavaScript untuk mencipta visualisasi dipacu data interaktif, menjana HTML dan data daripada PHP, dan kemudian menggambarkannya pada sisi klien menggunakan D3.js. ASCIIFlow: Perpustakaan untuk mencipta perwakilan teks rajah aliran data, sesuai untuk visualisasi proses dan algoritma.

Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat? Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat? May 08, 2024 pm 10:15 PM

Jawapan: Gunakan PHPCI/CD untuk mencapai lelaran pantas, termasuk menyediakan saluran paip CI/CD, ujian automatik dan proses penggunaan. Sediakan saluran paip CI/CD: Pilih alat CI/CD, konfigurasikan repositori kod dan tentukan saluran paip binaan. Ujian automatik: Tulis ujian unit dan penyepaduan dan gunakan rangka kerja ujian untuk memudahkan ujian. Kes praktikal: Menggunakan TravisCI: Pasang TravisCI, tentukan saluran paip, dayakan saluran paip dan lihat hasilnya. Laksanakan penyampaian berterusan: pilih alatan pengerahan, tentukan saluran paip pengerahan dan automatik penggunaan. Faedah: Meningkatkan kecekapan pembangunan, mengurangkan ralat dan memendekkan masa penghantaran.

Bagaimana untuk menggunakan cache Redis dalam penomboran tatasusunan PHP? Bagaimana untuk menggunakan cache Redis dalam penomboran tatasusunan PHP? May 01, 2024 am 10:48 AM

Menggunakan cache Redis boleh mengoptimumkan prestasi halaman tatasusunan PHP. Ini boleh dicapai melalui langkah berikut: Pasang klien Redis. Sambung ke pelayan Redis. Cipta data cache dan simpan setiap halaman data ke dalam cincangan Redis dengan kunci "halaman:{page_number}". Dapatkan data daripada cache dan elakkan operasi mahal pada tatasusunan besar.

See all articles