


So schreiben Sie ein Komponistenpaket handschriftlich und laden es zur Veröffentlichung hoch
1. Über Composer
Composer ist ein
Abhängigkeitsmanagement-Tool
fürPHP5.3
oder höher. Sie können damit die Codebibliotheken deklarieren, von denen Ihr Projekt abhängt, und sie werden für Sie in Ihrem Projekt installiert. Damit können wir ganz einfacheinen Befehl
verwenden, um in unseren Projekten auf andere hervorragende Codes zu verweisen.PHP5.3
以上 的一个依赖管理工具
。它允许你声明项目所依赖的代码库,它会在你的项目中为你安装他们。有了它我们就可以轻松的使用一个命令
将其他优秀代码引用到我们的项目中来。
二、依赖包管理工具
java有maven
,前端有npm
,安卓有Gradle
,作为世界上最好的语言
也就有了composer
三、composer的优势
- 你有一个项目依赖于若干个库。
- 其中一些库依赖于其他库。
- 你声明你所依赖的东西。
- Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
四、composer常用命令
-
composer require
:安装一个软件包 -
composer update
:会检测新版本包需要的环境和依赖自动实现工具包的升级 -
composer install
:如果没有composer.json文件,会安装composer.json中的依赖 -
composer init
:会初始化一个composer.json配置文件五、composer的安装
参照菜鸟教程
六、手写一个composer包
在站点下新建一个目录,名为blog
。
1、目录下执行:composer init
执行完后,让我们输入一个包名,我就叫guangtouqiang/blog
把。
包名
name
- 包的名称,它包括供应商名称和项目名称,使用 / 分隔。
- 对于需要发布的包(库),这是必须填写的。
- 例如,phpmailer/phpmailer
2、执行guangtouqiang/blog
:
接下来让输入描述。
描述
description
- 一个包的简短描述。通常这个最长只有一行。
- 对于需要发布的包(库),这是必须填写的。
3、输入描述this is guangtouqiang test bag
4、输入作者名称(可选)
作者
authors
- 这个对象必须包含以下的所有属性。
- name: 作者的姓名,通常使用真名。
- email: 作者的 email 地址。
- homepage: 作者主页的 URL 地址。
- role: 该作者在此项目中担任的角色(例:开发人员 或 翻译)。
5、输入最低稳定版本
可用的稳定性标识:dev、alpha、beta、RC、stable。
,一般选择dev
。
6、输入包类型
🎜🎜2. Tools zur Abhängigkeitspaketverwaltung🎜🎜Java hat包类型
type
maven
, Front-End hat npm
und Android hat Gradle
hat als die beste Sprache der Welt
auch composer
🎜🎜🎜🎜3 Vorteile von Composer🎜- Sie haben ein Projekt Abhängigkeit in mehreren Bibliotheken.
- Einige dieser Bibliotheken sind von anderen Bibliotheken abhängig.
- Sie erklären, worauf Sie angewiesen sind.
- Composer ermittelt, welche Paketversionen installiert werden müssen, und installiert sie (lädt sie in Ihr Projekt herunter).
-
composer require
: 🎜Installieren Sie ein Softwarepaket composer update : 🎜 Erkennt die Umgebung und Abhängigkeiten, die für die neue Version des Pakets erforderlich sind, um das Toolpaket automatisch zu aktualisieren<br><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/020/ae6bea1f1fef591d0821649a7fe47455-4.gif" class="lazy" alt="Bildbeschreibung hier einfügen">
-
Composer-Installation
: 🎜Wenn keine Composer.json-Datei vorhanden ist , Composer wird installiert. Abhängigkeiten in .json -
composer init
: 🎜 initialisiert eine Composer.json-Konfigurationsdatei🎜🎜🎜5. Installation von Composer🎜Siehe Tutorial für Anfänger
blog
. 🎜🎜🎜1. Im Verzeichnis ausführen: composer init
🎜🎜
Nach der Ausführung geben wir einen Paketnamen ein. Ich nenne ihn
guangtouqiang/blog
. 🎜🎜🎜Paketname name
🎜- Der Name des Pakets, der den Herstellernamen und den Projektnamen enthält, getrennt durch /.
- Für Pakete (Bibliotheken), die veröffentlicht werden müssen, muss dies ausgefüllt werden.
- Zum Beispiel phpmailer/phpmailer
guangtouqiang/blog
aus:🎜🎜
Als nächstes geben wir eine Beschreibung ein. 🎜🎜🎜Description
description
🎜- Eine kurze Beschreibung eines Pakets. Normalerweise ist dies höchstens eine Zeile.
- Für Pakete (Bibliotheken), die veröffentlicht werden müssen, muss dies ausgefüllt werden.
das ist eine Guangtouqiang-Testtasche
🎜🎜
🎜4.
Geben Sie den Namen des Autors ein (optional)
🎜🎜
- Dieses Objekt muss alle folgenden Eigenschaften enthalten.
- Name: Der Name des Autors, normalerweise sein richtiger Name.
- E-Mail: Die E-Mail-Adresse des Autors.
- homepage: Die URL-Adresse der Homepage des Autors.
- Rolle: Die Rolle des Autors in diesem Projekt (z. B. Entwickler oder Übersetzer).
dev, alpha, beta, RC, Stable.
, wählen Sie im Allgemeinen dev
. 🎜🎜🎜6. Eingabepakettyp🎜🎜🎜Pakettyp type
🎜- 包的安装类型,默认为
library。
- library: 这是默认类型,它会简单的将文件复制到 vendor 目录。
- project: 这表示当前包是一个项目,而不是一个库。例:框架应用程序 Symfony standard edition,内容管理系统 SilverStripe installer 或者完全成熟的分布式应用程序。使用 IDE 创建一个新的工作区时,这可以为其提供项目列表的初始化。
- metapackage: 当一个空的包,包含依赖并且需要触发依赖的安装,这将不会对系统写入额外的文件。因此这种安装类型并不需要一个 dist 或 source。
- composer-plugin: 一个安装类型为 composer-plugin 的包,它有一个自定义安装类型,可以为其它包提供一个 installler。详细请查看 自定义安装类型。
默认为 library
我们选择1,library
即可!
7、需要输入开源协议
选择输入GPL,LGPL,BSD,MIT,Apache
这些开源协议即可:
8、是否依赖于其它包,是否依赖于其它环境,这边都yes即可。
Search for a package
:选择搜索php。
9、生成成功。
此时,目录下已经有个composer
这些配置:
七、composer目录的修改
看下刚刚生成的composer.json
:
{ "name": "guangtouqiang/blog", "description": "this is guangtouqiang test bag", "type": "1", "require": { "php": "^7.0" }, "license": "Apache-2.0", "authors": [ { "name": "guangtouqiang", "email": "xiaozhengguo521@gmail.com" } ], "minimum-stability": "dev"}
再次基础上增加:
{ "name": "guangtouqiang/blog", "description": "this is guangtouqiang test bag", "type": "1", "require": { "php": "^7.0" }, "license": "Apache-2.0", "authors": [ { "name": "guangtouqiang", "email": "xiaozhengguo521@gmail.com" } ], "minimum-stability": "dev", "autoload": { "psr-4": { "guangtouqiang\\": "src/guangtouqiang" } }}
命令行执行:composer dump-autoload
,更新composer的命名空间与文件夹映射关系。
同样,需要新建一个src
和guangtouqiang
的文件夹:
在根目录新建个index.php
测试一波:
输出:
注意命名空间的层级与文件夹层级是否相同,类名与文件名相同才能自动加载。
八、将写好的composer包上传
1、在github上新建个仓库
2、将本地的composer包上传到新仓库
git init
git add .
git commit -m "xxx"
git remote add origin 你的远程仓库地址
git push -u origin master
3、登录https://packagist.org/packages/submit
4、将你github上的仓库地址复制进去:
5、配置webhook:
6、复制上图地址到github。
Webhook
hinzufügen: webhook
:
这时候,github仓库与packagist已经建立了关联。但是还需要进行发布正式版本才能使用。
7、打版本标签
git tag -a v1.0.1 -m "第一版"
git push origin v1.0.1
此时,已经标签成功了,从packagist能看到我们所有的版本。
执行composer require xx/xxx

Dies mittlerweile , das Github-Repository und der Packagist wurden verknüpft. Es muss jedoch noch die offizielle Version veröffentlicht werden, bevor es verwendet werden kann.
7. Markieren Sie die Version git tag -a v1.0.1 -m "erste Version"
git push origin v1.0.1
Zu diesem Zeitpunkt Die Etikettierung ist gelungen und alle unsere Versionen sind bei packagist einsehbar. Führen Sie
Composer aus require xx/xxx
kann von anderen verwendet werden.
Das obige ist der detaillierte Inhalt vonSo schreiben Sie ein Komponistenpaket handschriftlich und laden es zur Veröffentlichung hoch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





Laravel ist ein PHP -Framework zum einfachen Aufbau von Webanwendungen. Es bietet eine Reihe leistungsstarker Funktionen, darunter: Installation: Installieren Sie die Laravel CLI weltweit mit Komponisten und erstellen Sie Anwendungen im Projektverzeichnis. Routing: Definieren Sie die Beziehung zwischen der URL und dem Handler in Routen/Web.php. Ansicht: Erstellen Sie eine Ansicht in Ressourcen/Ansichten, um die Benutzeroberfläche der Anwendung zu rendern. Datenbankintegration: Bietet eine Out-of-the-Box-Integration in Datenbanken wie MySQL und verwendet Migration, um Tabellen zu erstellen und zu ändern. Modell und Controller: Das Modell repräsentiert die Datenbankentität und die Controller -Prozesse HTTP -Anforderungen.

Bei der Entwicklung von Websites mit CraftCMS stoßen Sie häufig mit Ressourcendateiproblemen, insbesondere wenn Sie häufig CSS und JavaScript -Dateien aktualisieren, alte Versionen von Dateien möglicherweise weiterhin vom Browser zwischengespeichert. Dieses Problem wirkt sich nicht nur auf die Benutzererfahrung aus, sondern erhöht auch die Schwierigkeit der Entwicklung und des Debuggens. Kürzlich habe ich in meinem Projekt ähnliche Probleme gestoßen, und nach einigen Erkundungen fand ich das Plugin Wiejeben/Craft-Laravel-Mix, das mein Caching-Problem perfekt löste.

Ich habe ein schwieriges Problem bei einer Mail -Marketing -Kampagne: So erstellen und senden Sie E -Mails im HTML -Format effizient. Der traditionelle Ansatz besteht darin, Code manuell zu schreiben und E-Mails mit einem SMTP-Server zu senden. Dies ist jedoch nicht nur zeitaufwändig, sondern auch fehleranfällige. Nachdem ich mehrere Lösungen ausprobiert hatte, entdeckte ich Duwa.io, eine einfache und benutzerfreundliche Wiederherstellung, die mir hilft, HTML-Mail schnell zu erstellen und zu senden. Um den Entwicklungsprozess weiter zu vereinfachen, habe ich beschlossen, Composer für die Installation und Verwaltung von Duwa.ios PHP -Bibliothek - Captaindoe/Duwa zu verwalten.

Ich hatte ein schwieriges Problem, wenn ich an einem Projekt mit einer großen Anzahl von Leitungseinheiten arbeitete: Jedes Mal, wenn das Unternehmen serialisiert und deserialisiert wird, wird die Leistung sehr ineffizient, was zu einer signifikanten Zunahme der Systemantwortzeit führt. Ich habe mehrere Optimierungsmethoden ausprobiert, aber es funktioniert nicht gut. Glücklicherweise habe ich durch die Verwendung von Sidus/Doctrine-Serializer-Bunde dieses Problem erfolgreich gelöst und die Leistung des Projekts erheblich verbessert.

Bei der Entwicklung einer E-Commerce-Website habe ich auf ein schwieriges Problem gestoßen: So liefern Sie den Benutzern personalisierte Produktempfehlungen. Anfangs habe ich einige einfache Empfehlungsalgorithmen ausprobiert, aber die Ergebnisse waren nicht ideal und die Benutzerzufriedenheit war ebenfalls betroffen. Um die Genauigkeit und Effizienz des Empfehlungssystems zu verbessern, habe ich mich entschlossen, eine professionellere Lösung zu übernehmen. Schließlich habe ich Andres-Montanez/Empfehlungen durch den Komponisten installiert, was nicht nur mein Problem löste, sondern auch die Leistung des Empfehlungssystems erheblich verbesserte. Sie können Komponist über die folgende Adresse lernen:

Um Laravel zu installieren, befolgen Sie die folgenden Schritte: Installieren Sie den Komponisten (für MacOS/Linux und Windows). Installieren Sie LaRavel Installer. Erstellen Sie eine neue Projektstart -Service -Access -Anwendung (URL: http://127.0.0.1:8000).

Das Laravel-Framework verfügt über integrierte Methoden, um die Versionsnummer einfach zu sehen, um die verschiedenen Anforderungen der Entwickler zu erfüllen. In diesem Artikel werden diese Methoden untersucht, einschließlich der Verwendung des Befehlszeilen -Tools des Composers, der Zugriff auf .Env -Dateien oder das Erhalten von Versionsinformationen über PHP -Code. Diese Methoden sind für die Aufrechterhaltung und Verwaltung der Versionierung von Laravel -Anwendungen von wesentlicher Bedeutung.

Bei der Entwicklung einer E-Commerce-Plattform ist es entscheidend, das richtige Framework und Werkzeuge auszuwählen. Kürzlich, als ich versuchte, eine featurereiche E-Commerce-Website aufzubauen, stieß ich auf ein schwieriges Problem: wie ich schnell eine skalierbare und voll funktionsfähige E-Commerce-Plattform erstellen kann. Ich habe mehrere Lösungen ausprobiert und am Ende die erweiterte Projektvorlage von FecMall (FECMALL/FBBCBASE-APP-APMANCED) ausgewählt. Durch die Verwendung von Komponisten wird dieser Prozess sehr einfach und effizient. Komponist kann über die folgende Adresse gelernt werden: Lernadresse
