search
HomeDevelopment ToolscomposerSome commands\parameters\descriptions in composer

The following tutorial column of composer will introduce some commonly used commands\parameters\instructions of composer. I hope it will be helpful to friends in need!

Install

curl -sS https://getcomposer.org/installer | php

or

php -r "readfile('https://getcomposer.org/installer');" | php

Global installation

mv composer.phar /usr/local/bin/composer

Install Chinese image

composer config -g repo.packagist composer https://packagist.phpcomposer.com

Ignore version matching

composer install/update --ignore-platform-reqs

Install plug-in package?

composer global require "fxp/composer-asset-plugin:1.2.0“

Create project create-project

You can use Composer to create a new project from an existing package. This is equivalent to executing a git clone or svn checkout command to install the dependencies of this package into its own vendor directory.

This command has several common uses:

  1. You can quickly deploy your application.
  2. You can check out any resource pack and develop patches for it.
  3. For multi-person development projects, you can use it to speed up application initialization.

To create a new Composer-based project, you can use the "create-project" command. Pass a package name and it will create the project's directory for you. You can also specify a version number in the third parameter, otherwise the latest version will be retrieved.

If the directory does not currently exist, it will be automatically created during the installation process.

php composer.phar create-project doctrine/orm path 2.2.*

In addition, you can also start this project through the existing composer.json file without using this command.

By default, this command will look for the package you specify on packagist.org.

Create Project-Parameters

  • --repository-url: Provide a custom repository to search for packages, this will be used instead of packagist.org. It can be an HTTP URL pointing to a composer resource library, or a local path pointing to a packages.json file.
  • --stability (-s): The lowest stable version of the resource package, the default is stable.
  • --prefer-source: When a package is available, install it from source.
  • --prefer-dist: When a package is available, install it from dist.
  • --dev: Install the packages listed in the require-dev field.
  • --no-install: Disable installation package dependencies.
  • --no-plugins: Disable plugins.
  • --no-scripts: Disable the execution of scripts defined in the root resource package.
  • --no-progress: Remove progress information, which can avoid confusing display in some terminals or scripts that do not handle line breaks.
  • --keep-vcs: Skip missing VCS when creating. This is useful if you are running the create command in non-interactive mode.

Self-update self-update

To upgrade Composer itself to the latest version, just run the self-update command. It will replace your composer.phar file to the latest version.

php composer.phar self-update

If you want to upgrade to a specific version, you can simply specify it like this:

php composer.phar self-update 1.0.0-alpha7

If you have installed Composer for the entire system (see Global Installation), you may need to Run it under root permissions:

sudo composer self-update

Self-update-parameters

  • --rollback (-r): Roll back to the last version you have installed .
  • --clean-backups: Delete old backups during the update process, making the current version after the update the only available backup.

Search search

The search command allows you to search for dependency packages for the current project. Usually it only searches packages on packagist.org , you can simply enter your search criteria.

php composer.phar search monolog

You can also perform a multi-criteria search by passing multiple parameters.

Search-Parameters

  • --only-name (-N): Search only for the specified name (exact match).

Declare dependencies require

##require The command adds a new dependency package to the current directory composer.json in the file.

php composer.phar require
When adding or changing dependencies, the modified dependencies will be installed or updated.

If you do not want to specify dependent packages interactively, you can specify dependent packages directly in this command.

php composer.phar require vendor/package:2.* vendor/package2:dev-master
Declare dependencies-parameters

    --prefer-source: When there is an available package, install it from
  • source.
  • --prefer-dist: When a package is available, install it from
  • dist.
  • --dev: Install the packages listed in the
  • require-dev field.
  • --no-update: Disable automatic updates of dependencies.
  • --no-progress: Remove progress information, which can avoid confusing display in some terminals or scripts that do not handle line breaks.
  • --update-with-dependencies Update the dependencies of the newly installed package together.
Update

update

To get the latest versions of dependencies and upgrade the

composer.lock file, you should use update Order.

php composer.phar update

这将解决项目的所有依赖,并将确切的版本号写入 composer.lock

如果你只是想更新几个包,你可以像这样分别列出它们:

php composer.phar update vendor/package vendor/package2

你还可以使用通配符进行批量更新:

php composer.phar update vendor/*

更新-参数

  • --prefer-source: 当有可用的包时,从 source 安装。
  • --prefer-dist: 当有可用的包时,从 dist 安装。
  • --dry-run: 模拟命令,并没有做实际的操作。
  • --dev: 安装 require-dev 字段中列出的包(这是一个默认值)。
  • --no-dev: 跳过 require-dev 字段中列出的包。
  • --no-scripts: 跳过 composer.json 文件中定义的脚本。
  • --no-plugins: 关闭 plugins。
  • --no-progress: 移除进度信息,这可以避免一些不处理换行的终端或脚本出现混乱的显示。
  • --optimize-autoloader (-o): 转换 PSR-0/4 autoloading 到 classmap 可以获得更快的加载支持。特别是在生产环境下建议这么做,但由于运行需要一些时间,因此并没有作为默认值。
  • --lock: 仅更新 lock 文件的 hash,取消有关 lock 文件过时的警告。
  • --with-dependencies 同时更新白名单内包的依赖关系,这将进行递归更新。

安装 install

install 命令从当前目录读取 composer.json 文件,处理了依赖关系,并把其安装到 vendor 目录下。

php composer.phar install

如果当前目录下存在 composer.lock 文件,它会从此文件读取依赖版本,而不是根据 composer.json 文件去获取依赖。这确保了该库的每个使用者都能得到相同的依赖版本。

如果没有 composer.lock 文件,composer 将在处理完依赖关系后创建它。

安装-参数

  • --prefer-source: 下载包的方式有两种: source 和 dist。对于稳定版本 composer 将默认使用 dist 方式。而 source 表示版本控制源 。如果 --prefer-source 是被启用的,composer 将从 source 安装(如果有的话)。如果想要使用一个 bugfix 到你的项目,这是非常有用的。并且可以直接从本地的版本库直接获取依赖关系。
  • --prefer-dist: 与 --prefer-source 相反,composer 将尽可能的从 dist 获取,这将大幅度的加快在 build servers 上的安装。这也是一个回避 git 问题的途径,如果你不清楚如何正确的设置。
  • --dry-run: 如果你只是想演示而并非实际安装一个包,你可以运行 --dry-run 命令,它将模拟安装并显示将会发生什么。
  • --dev: 安装 require-dev 字段中列出的包(这是一个默认值)。
  • --no-dev: 跳过 require-dev 字段中列出的包。
  • --no-scripts: 跳过 composer.json 文件中定义的脚本。
  • --no-plugins: 关闭 plugins。
  • --no-progress: 移除进度信息,这可以避免一些不处理换行的终端或脚本出现混乱的显示。
  • --optimize-autoloader (-o): 转换 PSR-0/4 autoloading 到 classmap 可以获得更快的加载支持。特别是在生产环境下建议这么做,但由于运行需要一些时间,因此并没有作为默认值。

The above is the detailed content of Some commands\parameters\descriptions in composer. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:cnblogs. If there is any infringement, please contact admin@php.cn delete
Composer and AI: New Possibilities in PHP DevelopmentComposer and AI: New Possibilities in PHP DevelopmentApr 19, 2025 am 12:03 AM

The combination of AI and Composer can improve PHP development efficiency and security. Specifically reflected in: 1. Dependency analysis and optimization: AI can predict dependencies and reduce conflicts. 2. Automated security checks: AI can identify security vulnerabilities, and it is recommended to update them. 3. Code generation and optimization: AI can automatically generate and optimize related code.

Using Dicr/Yii2-Google to integrate Google API in YII2Using Dicr/Yii2-Google to integrate Google API in YII2Apr 18, 2025 am 11:54 AM

VprocesserazrabotkiveB-enclosed, Мнепришлостольностьсясзадачейтерациигооглапидляпапакробоглесхетсigootrive. LEAVALLYSUMBALLANCEFRIABLANCEFAUMDOPTOMATIFICATION, ČtookazaLovnetakProsto, Kakaožidal.Posenesko

How to use Composer to resolve JSON Schema verification issuesHow to use Composer to resolve JSON Schema verification issuesApr 18, 2025 am 11:51 AM

I'm having a tricky problem when developing a Symfony-based application: how to effectively validate JSON data format. Initially, I tried using manual verification code, but this was not only complicated, but also error-prone. After some exploration, I discovered a Composer package called ptyhard/json-schema-bundle, which brought great convenience and efficiency to my project.

Use Composer to solve the dilemma of recommendation systems: andres-montanez/recommendations-bundleUse Composer to solve the dilemma of recommendation systems: andres-montanez/recommendations-bundleApr 18, 2025 am 11:48 AM

When developing an e-commerce website, I encountered a difficult problem: how to provide users with personalized product recommendations. Initially, I tried some simple recommendation algorithms, but the results were not ideal, and user satisfaction was also affected. In order to improve the accuracy and efficiency of the recommendation system, I decided to adopt a more professional solution. Finally, I installed andres-montanez/recommendations-bundle through Composer, which not only solved my problem, but also greatly improved the performance of the recommendation system. You can learn composer through the following address:

How to quickly build Fecmall advanced project templates using ComposerHow to quickly build Fecmall advanced project templates using ComposerApr 18, 2025 am 11:45 AM

When developing an e-commerce platform, it is crucial to choose the right framework and tools. Recently, when I was trying to build a feature-rich e-commerce website, I encountered a difficult problem: how to quickly build a scalable and fully functional e-commerce platform. I tried multiple solutions and ended up choosing Fecmall's advanced project template (fecmall/fbbcbase-app-advanced). By using Composer, this process becomes very simple and efficient. Composer can be learned through the following address: Learning address

Improve Doctrine entity serialization efficiency: application of sidus/doctrine-serializer-bundleImprove Doctrine entity serialization efficiency: application of sidus/doctrine-serializer-bundleApr 18, 2025 am 11:42 AM

I had a tough problem when working on a project with a large number of Doctrine entities: Every time the entity is serialized and deserialized, the performance becomes very inefficient, resulting in a significant increase in system response time. I've tried multiple optimization methods, but it doesn't work well. Fortunately, by using sidus/doctrine-serializer-bundle, I successfully solved this problem, significantly improving the performance of the project.

Use Composer to resolve error logging issues in Laravel projectsUse Composer to resolve error logging issues in Laravel projectsApr 18, 2025 am 11:39 AM

When developing Laravel projects, the management of error logs is a very critical link. Recently, I encountered a problem in my project: how to efficiently capture and record all types of errors and ensure that these error messages can be processed in a timely manner. After some research, I found the lukeboy25/errorlogger package. It is installed through Composer and can greatly simplify the management process of error logs. You can learn composer through the following address:

How to use Composer to improve the security of Laravel applications: Applications of wiebenieuwenhuis/laravel-2fa libraryHow to use Composer to improve the security of Laravel applications: Applications of wiebenieuwenhuis/laravel-2fa libraryApr 18, 2025 am 11:36 AM

When developing a Laravel application, I encountered a common but difficult problem: how to improve the security of user accounts. With the increasing complexity of cyber attacks, a single password protection is no longer enough to ensure the security of users' data. I tried several methods, but the results were not satisfactory. Finally, I installed the wiebenieuwenhuis/laravel-2fa library through Composer and successfully added two-factor authentication (2FA) to my application, greatly improving security.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)