Maison > outils de développement > composer > Gestion des dépendances du compositeur (outil PHP)

Gestion des dépendances du compositeur (outil PHP)

藏色散人
Libérer: 2020-01-26 16:01:35
avant
4244 Les gens l'ont consulté

Gestion des dépendances du compositeur (outil PHP)

Arrêtez de chercher des packages d'extension PHP Pour les langages modernes, les gestionnaires de packages sont fondamentalement standard. Java a Maven, Python a pip, Ruby a gem et Nodejs a npm. PHP utilise PEAR, mais PEAR présente de nombreux pièges :

● Le traitement des dépendances est sujet à des problèmes

● La configuration est très complexe

● Difficile d'utiliser l'interface de ligne de commande

Heureusement, nous disposons de Composer, un outil puissant de gestion des dépendances PHP. Il est open source et simple à utiliser, et il est facile de soumettre vos propres packages.

Par exemple, si nous n'utilisons pas de framework au début et que nous voulons un code de vérification, nous devons d'abord nous rendre sur Gihutb ou ailleurs pour trouver une classe de code de vérification, puis l'inclure dans le projet, et puis modifiez-le. Dès qu'il démarre, des problèmes peuvent survenir lors de la maintenance ultérieure du projet. S'il est open source sur Github, vous pouvez également cliquer sur Regarder pour voir si des bogues sont corrigés ou si de nouvelles versions sont publiées, et vous pouvez suivre les mises à niveau en temps opportun.

Si vous téléchargez trop de packs d'extension, vous aurez besoin de divers inclusions. Il peut également y avoir des conflits d'espace de noms en fonction du projet. Si le pack d'extension est mis à niveau, vous devrez le faire. téléchargez-le à nouveau Modifier, c'est très gênant. Ainsi est née la bibliothèque de gestion des dépendances Composer.

Ce qui précède sont les scénarios de demande les plus importants pour Compser.

1. Peut facilement installer et mettre à niveau les packs d'extension

2. Incluez simplement, pas besoin d'écrire include partout

3. Évitez les conflits d'espace de noms

Je vais habituellement sur Github, Code Cloud et d'autres plateformes pour trouver des packages d'extension, mais il existe désormais un site Web qui intègre tous les packages. En d'autres termes, la méthode de développement actuelle : recherchez d'abord sur packagist, puis utilisez Composer pour installer et. mise à niveau.

Installer Composer

Pour une installation infaillible, cliquez simplement sur https://getcomposer.org/Composer-Setup.exe, téléchargez et installez, ainsi que le programme d'installation sera Vous téléchargez Composer et définissez votre variable d'environnement PATH afin que vous puissiez simplement appeler Composer depuis n'importe quel répertoire.

Pendant le processus d'installation, vous devez faire attention à trouver le répertoire racine de php.exe et à sélectionner le chemin PHP correct. Je ne fournirai pas de captures d'écran ici car je ne l'ai pas encore téléchargé et je l'ai installé manuellement.

Le répertoire sélectionné devrait ressembler à ceci :

D:\phpStudy\php\php-7.0.12-nts\php.exe
Copier après la connexion

Ce qui suit se concentrera sur l'installation manuelle. Je pense que cette méthode est très simple à utiliser :

<🎜. > Téléchargez d'abord un fichier composer.phar et placez le fichier phar dans le dossier développeur. Vous pouvez le faire comme vous le souhaitez, et il n'y a aucune limite quant au dossier dans lequel il doit être placé.

Ensuite ouvrez la fenêtre DOS, ou utilisez les touches de raccourci windows+R pour saisir cmd, utilisez la commande suivante, entrez d'abord le répertoire où vous avez placé le fichier phar

D:\developer\composer>echo @php "%~dp0composer.phar" %*>composer.bat
Copier après la connexion

Le signe du succès l'installation consiste à le saisir sur la ligne de commande

composer -v
Copier après la connexion

affiche le contenu suivant

Gestion des dépendances du compositeur (outil PHP)

Quand je vois cela, je suppose que Composer a été installé avec succès. Dans le réseau local chinois, l'utilisation de Composer est relativement lente, mais heureusement, il existe un miroir domestique. Exécutez la commande suivante pour passer au miroir domestique. Le miroir domestique met en cache tous les packages d'installation et les métadonnées sur le miroir domestique. salle informatique et accélérez-le via le CDN national, de sorte qu'il n'est pas nécessaire de faire ensuite une demande à un site Web étranger.

composer config -g repo.packagist composer https://packagist.phpcomposer.com
Copier après la connexion

Faire cela équivaut à changer la configuration globalement. J'ai choisi de modifier le fichier de configuration composer.json du projet en cours :

{
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.phpcomposer.com"
        }
    }
}
Copier après la connexion

<🎜. >

Commandes communes du compositeur

</p>selfupdate<p><strong>selfupdate</strong>

Mettez à jour le compositeur lui-même, veuillez exécuter composer selfupdate fréquemment pour que Composer reste toujours le dernière version.

composer selfupdate
Copier après la connexion

équivaut à

composer self-update
Copier après la connexion

<p>dumpautoload<code><strong>dumpautoload</strong>

Lorsque nous modifions le chargement automatique dans le fichier composer.json, Composer dumpautoload doit être exécuté pour que le chargement automatique prenne effet immédiatement. Sans avoir à exécuter des commandes d'installation ou de mise à jour.

composer dumpautoload
Copier après la connexion

est équivalent à

composer dump-autoload
Copier après la connexion

la commande dumpautoload a deux options couramment utilisées :

--optimize (-o) : convertir le chargement automatique PSR-0/4 en classmap, par exemple des vitesses de chargement plus rapides. Ceci est particulièrement adapté aux environnements de production, mais son exécution peut prendre un certain temps, ce n'est donc pas actuellement la valeur par défaut.

--no-dev : Désactivez les règles de chargement automatique.

installer

composer install
Copier après la connexion

Selon le fichier composer.lock (fichier de verrouillage) ou composer.json dans le fichier actuel répertoire, définissez les dépendances et installez les packages de dépendances. La commande

install vérifiera d'abord si le fichier de verrouillage composer.lock existe. S'il existe, elle téléchargera la version spécifiée dans le fichier composer.lock, en ignorant la définition dans le fichier composer.json.

# 查看 composer install 的帮助信息
composer install -h
# 只安装 require 中定义的依赖,而不安装 require-dev 中定义的依赖
composer install --no-dev
Copier après la connexion

<code><strong>update</strong>update

Si vous souhaitez mettre à jour la version de votre dépendance, ou si vous modifiez la dépendance dans composer.json, vous voulez Composer effectue les opérations de mise à jour telles que définies dans le fichier composer.json, à l'aide de la commande update.

composer update
Copier après la connexion

<strong>require</strong></p>exiger<🎜><🎜>

require 命令一般用来安装新的依赖包,并将依赖写入当前目录的 composer.json 文件中。

如果 composer.json 文件中,添加或改变了依赖,修改后的依赖关系将被安装或者更新。

<strong>composer require</strong>

你也可以直接在命令中指明需要安装的依赖包。

composer require barryvdh/laravel-ide-helper
Copier après la connexion

--dev 选项和 require-dev 相对应。如果你的依赖包仅仅用于开发环境,建议加上 --dev 选项。

composer require --dev barryvdh/laravel-ide-helper
Copier après la connexion

<strong>create-project</strong>

你可以使用 create-project 从现有的包中创建一个新的项目。

它相当于执行了 git clone 命令后,将这个包的依赖安装到它自己的 vendor 目录。

此命令有几个常见的用途:

你可以快速的部署你的应用。

你可以检出任何资源包,并开发它的补丁。

多人开发项目,可以用它来加快应用的初始化。

# 安装 Laravel 项目
composer create-project --prefer-dist laravel/laravel blog 5.5.*
Copier après la connexion

如果没有指定版本号,就默认安装最新的版本。

--prefer-dist: 当有可用的包时,从 dist 安装。

phpStudy集成环境下 安装composer失败

报错提示:

The "https://getcomposer.org/versions" file could not be downloaded: failed to open stream: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
The "https://getcomposer.org/download/1.2.0/composer.phar.sig" file could not be downloaded: SSL: crypto enabling timeout
Failed to enable crypto
failed to open stream: operation failed
Copier après la connexion

1、安装composer需要开启openssl拓展 而phpstudy默认是关闭的

2、将php目录下的ssleay32.dll,libeay32.dll以及php/ext文件夹下的:php_openssl.dll 3个文件拷贝到WINDOWS\system32 文件夹下。

3、openssl需要CA证书 phpstudy也是没有的

CA证书下载地址:

http://curl.haxx.se/docs/caextract.html

选中之后单击右键选择另存为

下载成功之后放到tmp文件夹下面

4、然后修改php.ini文件

openssl.cafile = "D:\phpStudy\tmp\cacert.pem"
Copier après la connexion

5、重启phpStudy就可以了报错提示:

failed to open stream: HTTP request failed!
Copier après la connexion

1、检查一下php的curl拓展是否开启

2、检查这两个配置是否开启。

allow_url_fopen = On
user_agent="PHP"
Copier après la connexion

 

也可以这样配置 user_agent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)")

模拟浏览器访问也是一个不错的选择

3、开启之后重启重启phpStudy就可以了

 

PS: openssl.cafile 配置选项, 是 PHP 5.6.0. 以上的版本才支持的

更多composer相关技术文章,请访问composer栏目:https://www.php.cn/tool/composer/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal