suchen
HeimEntwicklungswerkzeugecomposerAusführliche Erklärung des automatischen Ladens in der Composer-Reihe

下面由composer使用教程栏目为大家讲解Composer系列之autoload文件,希望对需要的朋友有所帮助!

Ausführliche Erklärung des automatischen Ladens in der Composer-Reihe

简介

Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。

对于类库的自动加载,Composer 生成了一个 vendor/autoload.php 文件。引入这个文件,就能得到一个免费的自动加载支持,这种感觉真是棒极了~

本文主要是介绍如何利用 Composer 自带的自动加载机制,加载本地自定义的包(即不是来自于 packagist)。

使用

在 composer.json 文件中的 autoload 字段中添加自己的 autoloader。

目前 Composer 支持四种自动加载映射的方式:

PSR-0 autoloading
PSR-4 autoloading
classmap generation
files

下面只介绍 PSR-4,为什么?因为它足够方便好用(当你添加类时不需要重新生成 autoloader)。详细请查看 自动加载 - 参考

PSR-4(推荐)

{
    "autoload": {
        "psr-4": {
            "First\\": "src/",
            "Temp\\": "lib/"
        }
    }
}

上面的代码采用 PSR-4 规范,该规范包含了 PHP 最新的自动加载标准,它要求必须使用 namespace (命名空间)的方式。

First\\ 表示命名空间,必须以 \\ 结尾,避免相似的命名空间导致冲突,若包含子命名空间,可以这样表示:First\\Second\\。

src/ 表示命名空间所在目录为与 Composer 的 vendor 目录同级的 src 目录,如下所示:

First/
|---examples/
    |---get.php
|---src/
    |---Curl.php
|---vendor/
    |---composer/
    |---autoload.php
|---composer.json

如果需要在多个目录下搜索相同的命名前缀,可以用一个数组提供:

{
    "autoload": {
        "psr-4": {"First\\": ["src/", "lib/"]}
    }
}

修改完 composer.json 的 autoload 字段后需要更新一下 Composer 的自动加载类:

composer dumpautoload -o

对应 Curl.php 的命名空间如下表示:

<?php
namespace First;
class Curl
{
}

引用 Curl.php 的方式如下:

<?php
require &#39;../vendor/autoload.php&#39;;
use First\Curl;
$curl = new Curl();
...
...

小结

之前一直以为 namespace 是 PHP 内置好的,只需要在某个类上声明一下某个命名空间,在调用这个类的地方 use 一下就好。。。

直到前几天脱离框架,单独写了几个类,然后被 xxx class not found 错误折磨到怀疑人生,才明白需要有个 autoloader 才行。

题外话

现在 Composer 已经成为 PHP 的依赖管理标杆,多利用这个工具为自己的开发带来方便。

框架能大大减少开发成本,但有时候不利于个人技术的提升。在使用热门框架时,多看看框架的代码,不仅帮助自己理解掌握框架,也能带来许多编程思想和技术上的提高。

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung des automatischen Ladens in der Composer-Reihe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Dieser Artikel ist reproduziert unter:learnku. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Komponist: Der Schlüssel zum Aufbau robuster PHP -AnwendungenKomponist: Der Schlüssel zum Aufbau robuster PHP -AnwendungenApr 12, 2025 am 12:05 AM

Composer ist ein wichtiges Instrument zum Erstellen von robusten PHP -Anwendungen, da es das Abhängigkeitsmanagement vereinfacht, die Entwicklungseffizienz und die Codequalität verbessert. 1) Composer definiert Projektabhängigkeiten über die Composer.json -Datei und lädt diese Abhängigkeiten automatisch herunter und verwaltet sie. 2) Es generiert eine Composer.lock -Datei, um sicherzustellen, dass die Abhängigkeitsversion konsistent ist und automatisch über Anbieter/autoload.php geladen wird. 3) Beispiele für die Nutzung sind grundlegende Nutzung wie das Hinzufügen von Protokollbibliotheken sowie die erweiterte Nutzung wie Versionsbeschränkungen und Umgebungsvariablenverwaltung. 4) Zu den allgemeinen Fehler -Debugging -Techniken gehören Abhängigkeitskonflikte und Netzwerkprobleme. 5) Vorschläge zur Leistungsoptimierung umfassen die Verwendung von Composer.lock -Datei und Optimierung der automatischen Laden.

Komponist -Expertise: Was macht jemanden qualifiziertKomponist -Expertise: Was macht jemanden qualifiziertApr 11, 2025 pm 12:41 PM

Um bei der Verwendung von Composer kompetent zu werden, müssen Sie die folgenden Fähigkeiten beherrschen: 1. Fachkenntnis, um Composer.json und Composer.lock -Dateien zu verwenden.

Was macht ein Komponist?Was macht ein Komponist?Apr 08, 2025 am 12:19 AM

Composer ist ein Abhängigkeitsmanagement -Tool für PHP, das zum Deklarieren, Herunterladen und Verwalten von Projektabhängigkeiten verwendet wird. 1) Deponieren Sie Abhängigkeiten über Composer.json-Datei, 2) Installieren Sie Abhängigkeiten mit dem Befehl compoSerinstall, 3) Analysieren Sie den Abhängigkeitsbaum und laden Sie ihn von Packagist herunter, 4) Generieren Sie die automatische Datei autoload.php, um die automatische Laden zu vereinfachen.

Was ist App Composer?Was ist App Composer?Apr 07, 2025 am 12:07 AM

AppComposer ist ein Tool zum Erstellen und Verwalten von Anwendungen. 1) Sie vereinfacht die Anwendungsentwicklung und verbessert die Effizienz durch Ziehen und Konfigurieren vordefinierter Komponenten. 2) Entwickler können Komponenten definieren, Schnittstellen kombinieren, die Geschäftslogik definieren und letztendlich die Anwendung rendern. 3) Unterstützung der grundlegenden und fortgeschrittenen Nutzung, wie z. B. Aufgabenmanagement und bedingtes Rendering, wodurch flexible Anwendungen erstellt werden.

Wofür wird ein Komponist verwendet?Wofür wird ein Komponist verwendet?Apr 06, 2025 am 12:02 AM

Composer ist ein Abhängigkeitsmanagement -Tool für PHP. Zu den Kernschritten für die Verwendung von Komponisten gehören: 1) Deponcies in Composer.json wie "Stripe/Stripe-Php": "^7.0"; 2) CompoSerinstall ausführen, um Abhängigkeiten herunterzuladen und zu konfigurieren. 3) Verwalten Sie Versionen und Autoloads über Composer.lock und autoload.php. Composer vereinfacht das Abhängigkeitsmanagement und verbessert die Projekteffizienz und -wartbarkeit.

Was ist Komponist KI?Was ist Komponist KI?Apr 05, 2025 am 12:13 AM

CompoSerai ist ein Tool für künstliche Intelligenz, um Code zu generieren und zu optimieren, um die Entwicklungseffizienz und -qualität zu verbessern. Zu den Funktionen gehören: 1. Codegenerierung: Generieren Sie Code -Snippets, die die Standards entsprechend den Anforderungen entsprechen. 2. Codeoptimierung: Durch die Analyse vorhandener Code machen Optimierungsvorschläge. 3. Automatisierte Tests: Erstellen Sie Testfälle, um die Codequalität zu gewährleisten.

Was ist Komponist in Android?Was ist Komponist in Android?Apr 04, 2025 am 12:18 AM

Der Komponist ist Teil des SurfaceFlinger -Dienstes in Android und ist für die Synthese mehrerer Grafikschichten in den endgültigen Anzeigepuffer verantwortlich. 1) Sammeln Sie die Grafikschicht, 2) Sortieren Sie die Grafikschicht, 3) Synthese der Grafikschicht, 4) Ausgabe auf das Anzeigegerät, um die Anwendungsleistung und die Benutzererfahrung zu verbessern.

Was ist die Definition eines Komponisten?Was ist die Definition eines Komponisten?Apr 03, 2025 am 12:17 AM

Komponisten sind Menschen, die Musik machen, Emotionen ausdrücken, Geschichten erzählen und Ideen durch Musik vermitteln. Die Arbeit des Komponisten umfasst: 1. Konzept: Bestimmen Sie das Thema und den Stil der Arbeit; 2. Schöpfung: Melodie und Harmonie zusammenstellen, um eine vorläufige musikalische Struktur zu bilden; 3. Experiment: Vorsprechen und Anpassung der Arbeit durch Instrumente oder Software; 4. Verbesserung: Ändern und verbessern Sie sich gemäß den Vorsprechenergebnissen, bis Sie zufrieden sind.

See all articles

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

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor