Inhaltsverzeichnis
Initialisieren Sie die Datei „composer.json“
Name
Lizenz
erforderlich
Autoload
Projektstruktur
An GitHub senden
An Packagist senden
Heim Backend-Entwicklung PHP-Tutorial Wie man mit Composer ein Rad baut

Wie man mit Composer ein Rad baut

Sep 07, 2017 am 10:06 AM
composer

Composer ist ein Abhängigkeitsverwaltungstool für PHP. In diesem Artikel wird erläutert, wie Sie ein Paket erstellen und an Packagist senden, damit andere Ihr Paket problemlos über Composer verwenden können.

Es gibt die folgenden Schritte, um ein Composer-Paket zu entwickeln:

  1. Initialisieren Sie die Datei „composer.json“

  2. Definieren Sie den Namespace und Paketname

  3. Funktion, die zum Implementieren des Pakets erforderlich ist

  4. An GitHub senden

  5. Registrieren Sie die Paket auf Packagist

Initialisieren Sie die Datei „composer.json“

Nach der Installation von Composer können Sie es lokal ausführencomposer initSetzen Sie „composer.json“ über die interaktive Befehlszeile ein.

Im Folgenden werden einige der Attribute sowie die allgemeinen Einstellungen vorgestellt:

Name

Dieses Attribut definiert den Paketnamen, getrennt durch /, das vorangehende Eine davon ist das Angebot. Der Anbietername, gefolgt vom Paketnamen, ist ein eindeutiger Name, der Entwicklern von der Packagist-Website des Anbietervertreters zur Verfügung gestellt wird, um Pakete zu organisieren und Namenskonflikte zu vermeiden. Besuchen Sie daher beim Einreichen am besten https://packagist.org/packages/yourvendorname und ersetzen Sie yourvendorname in der URL durch den gewünschten Namen. Wenn die Seite nicht 404 hat, bedeutet dies, dass sie registriert wurde.

Lizenz

Lizenz. In Bezug auf Lizenzen wird empfohlen, zwei Artikel zu lesen: Einführung in Open-Source-Projektlizenzen und Auswahl der Lizenz

erforderlich

Erforderliche Abhängigkeiten zur Installation des aktuellen Pakets. Das aktuelle Paket wird nur installiert, wenn alle Abhängigkeiten installiert sind.

Autoload

Diese Konfiguration verwendet hauptsächlich PSR-4- oder PSR-0-Einstellungen, und es wird eher empfohlen, den PSR-4-Standard zu verwenden.

http://json-schema.org/ stellt die Definition von JSON Schema und die Implementierung seiner verschiedenen Funktionen in verschiedenen Sprachen vor, einschließlich der Implementierung von Validatoren, darunter JSON Schema Validator online Überprüfung dienen. Tatsächlich ist es am einfachsten, mit composer validate composer.json zu überprüfen, ob die Datei Fehler enthält.

Projektstruktur

Die Projektstruktur ist eine typische MVC-Struktur

.
└── geo
    └── geosso
        ├── LICENSE
        ├── README.md
        ├── composer.json
        └── src
            ├── Contracts
            ├── Http
            │   ├── Controllers
            │   ├── Middleware
            │   └── Requests
            ├── ParamsBean
            ├── Providers
            ├── Support
            └── config12 directories
Nach dem Login kopieren

LICENSE, README.md und Composer.json werden nach der Ausführung von tree -d manuell hinzugefügt.

Das Stammverzeichnis des Projekts ist unter src definiert und auch in Composer.json definiert, sodass Composer beim Laden dieses Pakets weiß, wie der Dateipfad über den Namespace aufgelöst wird.

Das HTTP-Verzeichnis stellt die Antwort auf die Anfrage dar, die Controller unten stellen den Controller der rechtlichen Anfrage dar, Middleware stellt die erste Ebene der Anfrage dar, die die Anfrage über Middleware abfängt, und Anfragen zum Erhalten der Front-End-Anfrage und des Filters die Anfrage.

Verträge stellen eine Schnittstellendefinition dar. ParamsBean stellt die Parameterkapselung dar, wenn die Anwendungsschicht mit dem zugrunde liegenden Dienst kommuniziert. Es verwendet die Bean, um jeden Parameter abzurufen, anstatt ein Array zu übergeben, um die Aufrufe konsistent zu machen. Außerdem wird die Typerkennung beim Aufruf der Schnittstelle erzwungen, wodurch die Parameter weitgehend vereinheitlicht werden können Übertragung zwischen Schichten.

Anbieter stellen den Service-Container von Laravel dar. Über den Service-Container können Sie Routen und Konfigurationen registrieren, Hilfsklassen laden und Schnittstellen und deren Implementierungen binden.

Unterstützung sind einige Hilfsklassen, die häufig verwendete Funktionen kapseln, die nichts mit der Logik zu tun haben. Über config kann die Konfiguration einfach mithilfe der globalen Funktion config() festgelegt und aufgerufen werden.

An GitHub senden

Befolgen Sie die vorherigen Schritte. Ein Paket verfügt über ein Grundgerüst. Der nächste Schritt besteht darin, es auf GitHub hochzuladen, das Projekt zu konfigurieren, kontinuierliche Integrationsdienste zu integrieren und ein Paket auszugeben Open-Source-Projektlizenz.

Wenn GitHub das Projekt initialisiert, können Sie eine .gitignore-Datei generieren, eine Lizenz auswählen, die README.md-Datei initialisieren, zum lokalen Projektverzeichnis wechseln und die folgenden Schritte ausführen, um das Verzeichnis hochzuladen GitHub:

git init # 初始化仓库git remote set-url origin --push --add git@github.com:jayxhj/geosso.git # 添加远程追踪仓库地址git add .
git commit
git push origin master
Nach dem Login kopieren

An Packagist senden

Packagist ist die Standardadresse für Composer, um Paketmetadateninformationen abzurufen. Nachdem Sie die Metadateninformationen von Packagist erhalten haben, ziehen Sie den Code von GitHub. Nachdem Sie das von Ihnen entwickelte Paket auf GitHub hochgeladen haben, müssen Sie es daher bei Packagist registrieren, damit Menschen auf der ganzen Welt Ihren Code über Composer abrufen können.

Das obige ist der detaillierte Inhalt vonWie man mit Composer ein Rad baut. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

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

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Beispiel für Laravel -Einführung Beispiel für Laravel -Einführung Apr 18, 2025 pm 12:45 PM

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.

Verbesserung der Serialisierungseffizienz der Doktrin: Anwendung von Sidus/Doctrin-Serializer-Bundle Verbesserung der Serialisierungseffizienz der Doktrin: Anwendung von Sidus/Doctrin-Serializer-Bundle Apr 18, 2025 am 11:42 AM

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.

Lösen Lösen Apr 18, 2025 am 09:24 AM

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.

So erstellen Sie schnell Fecmall Advanced Project Templates mit Composer So erstellen Sie schnell Fecmall Advanced Project Templates mit Composer Apr 18, 2025 am 11:45 AM

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

So verwenden Sie Komponist, um Probleme bei der Überprüfung von JSON -Schema zu beheben So verwenden Sie Komponist, um Probleme bei der Überprüfung von JSON -Schema zu beheben Apr 18, 2025 am 11:51 AM

Ich habe ein schwieriges Problem bei der Entwicklung einer symfonybasierten Anwendung: So validieren Sie das JSON-Datenformat effektiv. Anfangs habe ich versucht, den manuellen Verifizierungscode zu verwenden, aber dies war nicht nur kompliziert, sondern auch fehleranfällige. Nach einiger Exploration entdeckte ich ein Komponistenpaket namens Ptyhard/JSON-Schema-Bundle, das meinem Projekt große Bequemlichkeit und Effizienz brachte.

Verwenden von Komponisten zur Lösung der Abhängigkeitsinjektion: Anwendung der PSR-11-Containerschnittstelle Verwenden von Komponisten zur Lösung der Abhängigkeitsinjektion: Anwendung der PSR-11-Containerschnittstelle Apr 18, 2025 am 07:39 AM

Bei der Entwicklung eines großen PHP -Projekts habe ich ein häufiges, aber schwieriges Problem gestoßen: So verwalten und injizieren Sie Abhängigkeiten effektiv. Zunächst habe ich versucht, globale Variablen und manuelle Injektion zu verwenden, dies erhöhte jedoch nicht nur die Komplexität des Codes, sondern führte auch leicht zu Fehlern. Schließlich habe ich dieses Problem erfolgreich gelöst, indem ich die PSR-11-Containerschnittstelle und die Leistung des Komponisten verwendete.

So verwenden Sie Komponist, um die Sicherheit von Laravel-Anwendungen zu verbessern: Anwendungen der Wahrbenieuwenhuis/Laravel-2FA-Bibliothek So verwenden Sie Komponist, um die Sicherheit von Laravel-Anwendungen zu verbessern: Anwendungen der Wahrbenieuwenhuis/Laravel-2FA-Bibliothek Apr 18, 2025 am 11:36 AM

Bei der Entwicklung einer Laravel -Anwendung habe ich auf ein gemeinsames, aber schwieriges Problem gestoßen: wie die Sicherheit von Benutzerkonten verbessert werden kann. Mit der zunehmenden Komplexität von Cyber ​​-Angriffen reicht ein einzelner Kennwortschutz nicht mehr aus, um die Sicherheit der Benutzerdaten zu gewährleisten. Ich habe verschiedene Methoden ausprobiert, aber die Ergebnisse waren nicht zufriedenstellend. Schließlich installierte ich die WiebenieUwenhuis/Laravel-2FA-Bibliothek über Komponist und fügte meiner Anwendung erfolgreich die Zwei-Faktor-Authentifizierung (2FA) hinzu, wodurch die Sicherheit erheblich verbessert wurde.

Wie sehe ich die Versionsnummer von Laravel an? So sehen Sie die Versionsnummer von Laravel Wie sehe ich die Versionsnummer von Laravel an? So sehen Sie die Versionsnummer von Laravel Apr 18, 2025 pm 01:00 PM

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.

See all articles