GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer et utiliser PHP Composer sur Debian 11 Bullseye

Composer est un gestionnaire de packages au niveau de l'application pour le langage de programmation PHP similaire à NPM pour Node.Js ou PIP pour Python. Composer fournit un format standard pour gérer toutes les dépendances du logiciel PHP et les bibliothèques requises en téléchargeant tous les packages PHP requis de votre projet et en les gérant pour vous. Il est utilisé par la plupart des frameworks PHP modernes tels que Laravel, Drupal, Magento et Symfony.

Dans le didacticiel suivant, vous apprendrez à télécharger et à installer composer, ainsi que des informations essentielles sur la façon de travailler avec composer sur Debian 11 Bullseye.

Prérequis

  • OS recommandé : Debian 11 Bullseye
  • Compte utilisateur : Un compte utilisateur avec des privilèges sudo ou accès root (commande su) .
  • Packages requis : wget, PHP 5.3 ou supérieur

Mise à jour du système d'exploitation

Mettez à jour votre Debian 11 système d'exploitation pour s'assurer que tous les packages existants sont à jour :

sudo apt update && sudo apt upgrade

Accès racine ou sudo

Par défaut, lorsque vous créez votre compte au démarrage avec Debian par rapport aux autres distributions, elle ne reçoit pas automatiquement le statut sudoers. Vous devez soit avoir accès au mot de passe root utiliser la commande su ou visitez notre tutoriel sur Comment ajouter un utilisateur à Sudoers sur Debian.

Installer les dépendances

Les packages suivants sont requis pour télécharger composer et pour une utilisation future. Notez que si vous utilisez une version spécifique de PHP, vous devrez ajuster les packages PHP ci-dessous en fonction de la version. Par exemple, l'installation de PHP 8.0 sera php8.0-mbstring.

sudo apt install curl wget php-common php-cli php-gd php-mysql php-curl php-intl php-mbstring php-bcmath php-imap php-xml php-zip git unzip

Installer PHP Composer

L'équipe Composer a créé un script PHP officiel pour installer et configurer PHP Composer sur votre système. Vous pouvez le télécharger en visitant la page de téléchargement ou en ouvrant votre terminal Debian et en exécutant ce qui suit.

Méthode PHP :

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" 

Méthode WGET :

wget -O composer-setup.php https://getcomposer.org/installer

Maintenant que le fichier setup.php est téléchargé, il est temps d'installer composer. Cela peut se faire de deux manières différentes, l'une dans laquelle vous pouvez installer composer globalement, ou la seconde alternative qui consiste à installer par application PHP.

Pour installer globalement :

php composer-setup.php --install-dir=/usr/local/bin --filename=composer
chmod +x /usr/local/bin/composer

Pour installer par application :

cd /example-project/php-application && mkdir -p bin 
php composer-setup.php --install-dir=bin --filename=composer
chmod +x bin/composer

Comme indiqué ci-dessus, vous devrez accéder au répertoire du projet PHP et créer un répertoire bin pour l'installation du composeur PHP.

Une fois cela fait, confirmez que composer est installé et de quelle version et de quelle version il s'agit.

composer --version
Composer version 2.1.8 2021-09-15 13:55:14

Testez maintenant votre installation de composer avec la commande suivante :

composer

Exemple de résultat :

   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.1.8 2021-09-15 13:55:14

Usage:
  command [options] [arguments]

Options:
  -h, --help                     Display this help message
  -q, --quiet                    Do not output any message
  -V, --version                  Display this application version
      --ansi                     Force ANSI output
      --no-ansi                  Disable ANSI output
  -n, --no-interaction           Do not ask any interactive question
      --profile                  Display timing and memory usage information
      --no-plugins               Whether to disable plugins.
  -d, --working-dir=WORKING-DIR  If specified, use the given directory as working directory.
      --no-cache                 Prevent use of the cache
  -v|vv|vvv, --verbose           Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
  about                Shows a short information about Composer.
  archive              Creates an archive of this composer package.
  browse               Opens the package's repository URL or homepage in your browser.
  cc                   Clears composer's internal package cache.
  check-platform-reqs  Check that platform requirements are satisfied.
  clear-cache          Clears composer's internal package cache.
  clearcache           Clears composer's internal package cache.
  config               Sets config options.
  create-project       Creates new project from a package into given directory.
  depends              Shows which packages cause the given package to be installed.
  diagnose             Diagnoses the system to identify common errors.
  dump-autoload        Dumps the autoloader.
  dumpautoload         Dumps the autoloader.
  exec                 Executes a vendored binary/script.
  fund                 Discover how to help fund the maintenance of your dependencies.
  global               Allows running commands in the global composer dir ($COMPOSER_HOME).
  help                 Displays help for a command
  home                 Opens the package's repository URL or homepage in your browser.
  i                    Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
  info                 Shows information about packages.
  init                 Creates a basic composer.json file in current directory.
  install              Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
  licenses             Shows information about licenses of dependencies.
  list                 Lists commands
  outdated             Shows a list of installed packages that have updates available, including their latest version.
  prohibits            Shows which packages prevent the given package from being installed.
  reinstall            Uninstalls and reinstalls the given package names
  remove               Removes a package from the require or require-dev.
  require              Adds required packages to your composer.json and installs them.
  run                  Runs the scripts defined in composer.json.
  run-script           Runs the scripts defined in composer.json.
  search               Searches for packages.
  self-update          Updates composer.phar to the latest version.
  selfupdate           Updates composer.phar to the latest version.
  show                 Shows information about packages.
  status               Shows a list of locally modified packages.
  suggests             Shows package suggestions.
  u                    Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
  update               Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
  upgrade              Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
  validate             Validates a composer.json and composer.lock.
  why                  Shows which packages cause the given package to be installed.
  why-not              Shows which packages prevent the given package from being installed.

Comment travailler avec PHP Composer

Le tutoriel vous montrera quelques fonctions essentielles lors de l'installation du composeur PHP pour tester son fonctionnement.

Tout d'abord, créez votre répertoire de projet :

mkdir ~/composer-test
cd ~/composer-test

Ensuite, recherchez un package de Packagist, ou utilisez l'exemple du didacticiel et exécutez la commande suivante pour initialiser un nouveau fichier composer.json et installer le package carbon :

composer require psr/log

Exemple de résultat :

Using version ^1.1 for psr/log
./composer.json has been created
Running composer update psr/log
Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
  - Locking psr/log (1.1.4)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Downloading psr/log (1.1.4)
  - Installing psr/log (1.1.4): Extracting archive
Generating autoload files

Comme ci-dessus, le compositeur créera et mettra à jour automatiquement le fichier composer.json avec les dépendances requises. Vous pouvez également installer et/ou rétrograder des packages existants vers un numéro de version spécifique.

Exemple :

composer require psr/log=1.0

Dans le répertoire du projet, vous pouvez répertorier les fichiers et répertoires qu'il contient à l'aide de la commande ls :

ls -l

Exemple de résultat :

./composer.json has been updated
Running composer update psr/log
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 1 update, 0 removals
  - Downgrading psr/log (1.1.4 => 1.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 0 removals
  - Downloading psr/log (1.0.0)
  - Downgrading psr/log (1.1.4 => 1.0.0): Extracting archive
Generating autoload files

Une ventilation des termes et des fichiers répertoriés.

  • composer.json – Fichier créé pour le projet et toutes les dépendances PHP.
  • composer.lock – Fichier contenant la liste de tous les packages et versions.
  • fournisseur – Répertoire où les dépendances sont téléchargées et installées.

Avec votre projet, vous pouvez vouloir ou exiger de mettre à jour les dépendances, et cela peut être fait en exécutant la commande suivante :

composer update

Exemple de résultat :

Loading composer repositories with package information
Updating dependencies
Nothing to modify in lock file
Installing dependencies from lock file (including require-dev)
Nothing to install, update or remove
Generating autoload files

Comme vous pouvez le voir ci-dessus, aucune dépendance ne nécessite de mise à jour. S'il y en avait, le processus commencerait.

Si vous n'avez plus besoin du module, vous pouvez le supprimer avec la commande composer remove :

composer remove psr/log

Exemple de résultat :

./composer.json has been updated
Running composer update psr/log
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 0 updates, 1 removal
  - Removing psr/log (1.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 0 updates, 1 removal
  - Removing psr/log (1.0.0)
Generating autoload files

Lors de la suppression de packages, comme lors de l'installation, la suppression mettra automatiquement à jour le fichier composer.json. Vous pouvez le vérifier en utilisant la commande cat .

cat composer.json

Exemple avant la suppression du paquet psr/log :

{
    "require": {
        "psr/log": "1.0"
    }
}

Exemple après la suppression du paquet psr/log :

{
}

Comment mettre à jour PHP Composer

Une fonctionnalité pratique de PHP composer est qu'il peut se mettre à jour automatiquement vers la dernière version stable disponible. Exécutez la commande suivante pour effectuer la mise à niveau.

composer self-update

Exemple de résultat :

You are already using the latest available Composer version 2.1.8 (stable channel).

Comme mentionné ci-dessus, le composeur PHP est déjà à la dernière version. Cependant, si une mise à niveau est disponible, vous serez invité à mettre à niveau.


Debian
  1. Comment installer PHP Composer sur Debian Linux

  2. Comment installer PHP 8.0 sur Debian 11

  3. Comment installer PHP 8.0 sur Debian 10 / Debian 9

  4. Comment installer PHP 7.4 sur Debian 10

  5. Comment installer PHP sur Debian 11

Comment installer et utiliser PHP Composer sur Debian 11

Comment installer PHP 8 sur Debian 11 Bullseye

Comment installer PHP 7.4 sur Debian 11 Bullseye

Comment installer osTicket sur Debian 11 Bullseye

Comment installer PHP Composer sur Debian 11

Comment installer et utiliser PHP Composer sur Debian 11 Linux