для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php

Composer: ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΈΜ† ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ для PHP

ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.

ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ избавляСт ΠΎΡ‚ нСобходимости ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ, Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ, Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ зависимости β€” всС эти Π·Π°Π΄Π°Ρ‡ΠΈ ΠΎΠ½ Π±Π΅Ρ€Ρ‘Ρ‚ Π½Π° сСбя.

Π§Ρ‚ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€?

Composer: ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ для PHP

Π’ PHP для управлСния Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Composer. Π­Ρ‚ΠΎ ΠΌΠΎΡ‰Π½Ρ‹ΠΉ ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ навсСгда Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎ Π³ΠΎΠ»ΠΎΠ²Π½ΡƒΡŽ боль, ΡΠ²ΡΠ·Π°Π½Π½ΡƒΡŽ с поиском, установкой ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ зависимостСй Ρƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

Как Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Composer

Установка

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ сцСнария Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ

autoload.php ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Β«Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈΒ». Он ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ классам Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ сцСнарии Β«Π½Π° Π»Π΅Ρ‚ΡƒΒ». Π§Ρ‚ΠΎΠ±Ρ‹ это всё Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ autoload.php Π² вашСм сцСнарии:

Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΠ· Composer

Composer скачиваСт ΠΈ устанавливаСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎ ΠΈΡ… ΠΈΠΌΠ΅Π½ΠΈ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ сначала Π½ΡƒΠΆΠ½ΠΎ Β«Π½Π°Π³ΡƒΠ³Π»ΠΈΡ‚ΡŒΒ» Π½ΡƒΠΆΠ½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π΅Ρ‘ сайт, ΠΈ Π½Π°ΠΉΡ‚ΠΈ Ρ‚Π°ΠΌ Π² описании Π΅Ρ‘ имя. НапримСр, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ: fzaninotto/faker

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² сцСнариях

Π—Π°Ρ‚Π΅ΠΌ создаём Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€Π° ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΡ€Π°Π²ΠΈΠ» Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹. На этом всё.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Composer для самых ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ…

Когда я ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π· разбирался с composer, я набросал для сСбя ΠΌΠ°Π»Π΅Π½ΡŒΠΊΡƒΡŽ ΡˆΠΏΠ°Ρ€Π³Π°Π»ΠΊΡƒ ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ, спустя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽ Π΅Ρ‘ Π½Π° суд общСствСнности Π² нСсколько Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅.
Данная публикация Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π· столкнулся с Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡ‹ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² для PHP.

Π˜Ρ‚Π°ΠΊ, Composer β€” ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² для PHP.

Для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ Composer ΠΈ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΅Π³ΠΎ использования

Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚
Если Π² Π΄Π²ΡƒΡ… словах: Ρ‚ΠΎ это Π½Π°Π±ΠΎΡ€ скриптов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² VK API
БоотвСтствСнно, для Ρ€Π°Π±ΠΎΡ‚Ρ‹ этих скриптов Π½ΡƒΠΆΠ½ΠΎ нСсколько Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ пСрСчислСны Π² Ρ„Π°ΠΉΠ»Π΅ composer.json β€” ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с composer

Π’ этом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 5 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. БоотвСтствСнно, Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ€Π΅ΡˆΠΈΡ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° github, Ρ‚ΠΎ Π΅ΠΌΡƒ достаточно Π·Π°ΠΊΠΈΠ½ΡƒΡ‚ΡŒ Π² Ρ€Π΅ΠΏΡƒ саму ΠΏΠ°ΠΏΠΊΡƒ со скриптами ΠΈ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ composer.json, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π°: Π² Ρ€Π΅ΠΏΡƒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ вслСд Π·Π° Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΏΡ€ΠΈΡ†Π΅ΠΏΠΎΠΌ Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π—Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСньшС мСста, ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Π’ ΠΏΠ°ΠΏΠΊΠ΅ scripts Π»Π΅ΠΆΠ°Ρ‚ нСпосрСдствСнно скрипты ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ эти 5 ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ².

ЗапускаСм установку ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²:

ПослС установки появляСтся ΠΏΠ°ΠΏΠΊΠ° vendor, ΠΊΡƒΠ΄Π° ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ установлСнныС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈ формируСтся Ρ„Π°ΠΉΠ» autoload.php

Π­Ρ‚ΠΎΡ‚ Ρ„Π°ΠΉΠ» ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ ΠΈ всё β€” Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ спокойно с Π½ΠΈΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π°: Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΈΡ… зависимости ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, composer всё сдСлаСт Π·Π° Вас. И вся эта ΠΏΠ°Ρ‡ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌ СдинствСнным Ρ„Π°ΠΉΠ»ΠΎΠΌ autoload.php
ВсС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π»Π΅ΠΆΠ°Ρ‚ Π² vendor, Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ. ΠŸΡ€ΠΈ этом composer опираСтся Π½Π° Ρ„Π°ΠΉΠ»Ρ‹ composer.json, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ composer.json ΠΏΠ°ΠΊΠ΅Ρ‚Π° β€” это Π·Π°Π΄Π°Ρ‡Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΎΡ‚ потрСбитСля ΠΏΠ°ΠΊΠ΅Ρ‚Π° трСбуСтся лишь ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π² composer.json ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ.

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ composer.json ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ composer.json ΠΏΠ°ΠΊΠ΅Ρ‚Π°:

Π’ сСкции require прописана Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ этого ΠΏΠ°ΠΊΠ΅Ρ‚Π° β€” Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° guzzle http, нСобходимая для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ getjump/vk. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС, Ρ‚.Π΅. с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния потрСбитСля ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², всСвозмоТныС зависимости ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² β€” это Π½Π΅ наша Β«Π·Π°Π±ΠΎΡ‚Π°Β», с зависимостями composer разбСрётся сам.

ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²ΠΎ ΠΈΠΌΡ‘Π½ ΠΏΠ°ΠΊΠ΅Ρ‚Π° прописано Π² сСкции autoload

getjump\\Vk\\ β€” Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ пространства ΠΈΠΌΡ‘Π½
src/getjump/Vk/ β€” дирСктория, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π»Π΅ΠΆΠ°Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ с классами ΠΏΠ°ΠΊΠ΅Ρ‚Π°
Π Π°Π±ΠΎΡ‚Π° с этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅:

Core ΠΈ Friends β€” это классы Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Π»ΠΎΠΆΠ΅Π½Ρ‹ ΠΈ прописаны Π² ΠΏΠ°ΠΏΠΊΠ΅ src Π² соотвСтствии со стандартом PSR-4. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ структуры ΠΏΠ°ΠΊΠ΅Ρ‚Π° β€” это Ρ€Π°Π±ΠΎΡ‚Π° создатСля ΠΏΠ°ΠΊΠ΅Ρ‚Π°.
Нам, ΠΊΠ°ΠΊ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, достаточно ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π² наш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚
include ‘../vendor/autoload.php’;
ΠΈ всС эти классы ΠΈ пространства ΠΈΠΌΡ‘Π½ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.
ΠŸΡ€ΠΈ этом Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ. Composer это сдСлаСт сам ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ install.

Установка

Установка Composer глобально

1) Для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΠΏΡƒΡ‚ΡŒ ΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ PHP Π±Ρ‹Π» прописан Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния path.
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, Ρ‚Π°ΠΊ Π»ΠΈ это:
php –version

Π”Π°Π»Π΅Π΅ нас Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ пСрСмСнная path:

ВписываСм ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρƒ

*Π‘ Π΄Π°Π²Π½ΠΈΡ… Π²Ρ€Π΅ΠΌΡ‘Π½ Ρƒ мСня Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π»Π΅ΠΆΠΈΡ‚ сборка xampp, сама сборка здСсь Π½Π°Ρ„ΠΈΠ³ Π½Π΅ Π½ΡƒΠΆΠ½Π°, Π° Π²ΠΎΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ с Π½Π΅Ρ‘ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ (вСрсия PHP – 5.6).

3) Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ окруТСния path ΠΏΡƒΡ‚ΡŒ ΠΊ composer.bat, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для D:\bin Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ:

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² path
D:\Users\%userName%\AppData\Roaming\Composer\vendor\bin\
для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ-Π±Ρ‹ Π±Ρ‹Π»ΠΎ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ инструмСнты, глобально установлСнныС Ρ‡Π΅Ρ€Π΅Π· Composer.
(Π£ мСня ΠΏΠ°ΠΏΠΊΠ° Users располагаСтся Π½Π° дискС D, Π° Π½Π° C создан симлинк Π½Π° Π½Π΅Ρ‘).
Всё, composer установлСн ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π³ΠΎΡ‚ΠΎΠ² ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅.

Π•Ρ‰Ρ‘: ΠΏΡ€ΠΈ установкС ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ
[RuntimeException]
The APPDATA or COMPOSER_HOME environment variable must be set for composer to run correctly
РСшСниС нашлось здСсь github.com/composer/composer/issues/2033
ДобавляСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ APPDATA со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ D:\Users\GSU\AppData\Roaming

Установка Composer локально

ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ глобальной ΠΈ локальной установки

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΠΎ Ρ€Π°Π·Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈ локальной ΠΈ глобальной установках:

НапримСр:
Π›ΠΎΠΊΠ°Π»ΡŒΠ½ΠΎ: php composer.phar require silex/silex

1.1
Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½ΠΎ: composer require silex/silex

ΠŸΡ€ΠΈ глобальной установкС этот Ρ„Π°ΠΉΠ» Π½Π΅ Π½ΡƒΠΆΠ΅Π½. Composer запускаСтся ΠΏΡ€ΠΈ любой Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹

Бинтаксис composer.json

ИмСнованиС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ описания ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

Имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Ρ‹Ρ… косой Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ: названия поставщика (vendor name) ΠΈ названия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Если ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ Π² соотвСтствии со стандартом PSR-4, Π½ΠΎ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½Π΅ Π½Π° packagist.org, Π° Π½Π° github, Ρ‚ΠΎ вмСсто вСрсии ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ для этого ΠΏΠ°ΠΊΠ΅Ρ‚Π°:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, которая Π»Π΅ΠΆΠΈΡ‚ Π½Π° github, Π½ΠΎ ΠΏΡ€ΠΈ этом Π½Π΅ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π° ΠΏΠΎ стандарту PSR-4, Π° прСдставляСт ΠΈΠ· сСбя ΠΎΠ±Ρ‹ΠΊΠ½ΠΎΠ²Π΅Π½Π½ΠΎΠ΅ Π½Π°Π³Ρ€ΠΎΠΌΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² с классами ΠΈ функциями.

Pqr/superlib β€” эта Ρ‚Π° самая Β«Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°ΡΒ» Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°.

Π’ сСкции repositories для Π½Π΅Ρ‘ пишСм Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ β€” сСкция autoload, здСсь ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ Ρ„Π°ΠΉΠ»Ρ‹ с классами ΠΈ функциями.
Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Composer β€” ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ зависимостСй для PHP

для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. image loader. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php Ρ„ΠΎΡ‚ΠΎ. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.Composer (getcomposer.org) β€” это ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΠΈ ΡƒΠΆΠ΅ достаточно популярный ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ зависимостСй для PHP. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΡ‚ ΠΊΠ°ΠΊΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ зависит ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Composer установит Π½ΡƒΠΆΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π·Π° вас! ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ Composer β€” это Π½Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² классичСском ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ. Π”Π°, ΠΎΠ½ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ с сущностями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Β«ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈΒ» ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Π½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΠ½ΠΈ Π²Π½ΡƒΡ‚Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, Π° Π½Π΅ глобально (это ΠΎΠ΄Π½ΠΎ ΠΈΠ· основных ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ ΠΎΡ‚ старого-Π΄ΠΎΠ±Ρ€ΠΎΠ³ΠΎ PEAR).

Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΎΠ½ Π±Ρ‹Π» спроСктирован ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ двумя людьми Nils Adermann ΠΈ Jordi Boggiano, сСйчас Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ участвуСт Π±ΠΎΠ»Π΅Π΅ Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΎΡ€ΠΎΠ², ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ написан Π½Π° PHP 5.3, распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT ΠΈ доступСн Π½Π° github.

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π±Ρ‹Π»ΠΈ сдСланы Π°ΠΏΡ€Π΅Π»Π΅ 2011 Π³ΠΎΠ΄Π° ΠΈ Π½Π° сСгодняшний дСнь Composer находится Π² стадии Β«alpha3Β». Однако, ΠΎΠ½ ΡƒΠΆΠ΅ достаточно стабилСн ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ популярными PHP ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Symfony 2). Бписок ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Composer ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° сайтС packagist.org β€” это ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Composer ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². ΠšΡΡ‚Π°Ρ‚ΠΈ, Π½Π° Π½Π΅Π΄Π°Π²Π½Π΅ΠΉ ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Devconf 2012 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Yii Π² своём Π΄ΠΎΠΊΠ»Π°Π΄Π΅ упомянул, Ρ‡Ρ‚ΠΎ Yii2 скорСС всСго Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Composer.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠΏΠΈΡˆΡƒ основныС возмоТности Composer ΠΈ ΠΌΡ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ дСмонстрационный ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ Composer для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. ВсС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ доступны Π½Π° github.com ΠΈ bitbucket.org.

Π§Ρ‚ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ Composer?

Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Composer Π² своём ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Composer’ΠΎΠΌ, напишСм малСнький ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΠΊ Π½Π° PHP: Β«Super Hello WorldΒ». ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ вСлосипСд ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ «с нуля», Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ.

Как ΠΌΡ‹ это сдСлаСм Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Composer β€” ΠΎΠ½ сам скачаСт всС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ сгСнСрируСт для нас autoload.php. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ссли ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Β«Super Hello WorldΒ» ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ, достаточно Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ нашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° github (ΠΈΠ»ΠΈ Π΅Ρ‰Ρ‘ Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ), Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ всСх Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ Π½Π΅ готовя Π΄Π»ΠΈΠ½Π½ΠΎΠΉ инструкции ΠΏΠΎ ΠΈΡ… установкС. Нашим ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ достаточно Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ (ΡΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ) Β«Super Hello WorldΒ» ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ΠšΡΡ‚Π°Ρ‚ΠΈ, Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ синтаксисС запуска.
Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ ΠΏΠΎΠ΄ Windows, Ρ‚ΠΎ скорСС всСго Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅

МоТно ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ сСбС Тизнь, создав composer.bat ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΠ² Π΅Π³ΠΎ Π² %PATH%.

Π’ Linux ΠΈ OS X ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½Π° исполнСниС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Ρ‚ΠΈΠΏΠ°

composer.json

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ наш Super Hello World ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. И я Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ написал: http://github.com/pqr/superhelloworld. Код состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ index.php Ρ„Π°ΠΉΠ»Π° Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ web ΠΈ шаблона layout.twig Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ views.

Π“ΠΎΠ»ΠΎΠ²Π° всСму β€” это Ρ„Π°ΠΉΠ» composer.json. Он Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π² ΠΊΠΎΡ€Π½Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π² нашСм случаС рядом с дирСкториями web ΠΈ view. Π’ этом Ρ„Π°ΠΉΠ»Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΡ‚ ΠΊΠ°ΠΊΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ зависит наш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ссли эти Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΌΠΈ Composer-ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± устанавливаСмой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ классов ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для autoload.php).

composer.json, ΠΊΠ°ΠΊ Π²Ρ‹ догадались, ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… JSON. На вопрос «ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ JSON?» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Composer ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ «ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΏΡ€ΠΈΠΌΠΈΡ‚Π΅ это.«.

Нам Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ js-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ всС инструкции. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΈ самая главная инструкция: require.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ с сайта packagist.org

Π—Π΄Π΅ΡΡŒ я описал Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΎΡ‚ PHP вСрсии 5.3.0 ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΎΡ‚ silex (ΠΌΠΈΠΊΡ€ΠΎΡ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ) ΠΈ ΠΎΡ‚ twig (ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°Ρ‚ΠΎΡ€). Silex ΠΈ Twig доступны Π² Π²ΠΈΠ΄Π΅ Composer-ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π½Π° сайтС packagist.org, поэтому Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… настроСк Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚. Π—Π°ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ Silex Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ зависит Π΅Ρ‰Ρ‘ ΠΎΡ‚ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² β€” всС ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ скачСны ΠΈ установлСны автоматичСски.

Имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Ρ‹Ρ… косой Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ: названия поставщика (vendor name) ΠΈ названия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. НазваниСм поставщика Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ являСтся Π½ΠΈΠΊ Π°Π²Ρ‚ΠΎΡ€Π° ΠΈΠ»ΠΈ имя ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Иногда, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ поставщика совпадаСт с ΠΈΠΌΠ΅Π½Π΅ΠΌ самой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΠ»ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°.

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ вСрсии. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±Ρ€Π°Π½Ρ‡ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«dev-masterΒ» β€” приставка dev сигнализируСт, Ρ‡Ρ‚ΠΎ это имя Π±Ρ€Π°Π½Ρ‡Π°, Π° сам Π±Ρ€Π°Π½Ρ‡ соотвСтсвСнно называСтся Β«masterΒ». Для mercurial рСпозитория аналогичная запись Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ Β«dev-defaultΒ». Π’ качСствС Π½ΠΎΠΌΠ΅Ρ€Π° вСрсии ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТныС ΠΏΡ€Π°Π²ΠΈΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния. ΠšΡΡ‚Π°Ρ‚ΠΈ, Ссли Π²Ρ‹ скачиваСтС ΠΊΠΎΠ΄ ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория, Ρ‚ΠΎ Composer сканируСт Ρ‚Π΅Π³ΠΈ ΠΈ ΠΈΠΌΠ΅Π½Π° Π²Π΅Ρ‚ΠΎΠΊ Π² этом Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅Π³ΠΎ Π½Π° Π½ΠΎΠΌΠ΅Ρ€Π° вСрсий, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π΅Π³ Β«v1.2.3Β» Π±ΡƒΠ΄Π΅Ρ‚ использован ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Π΅Ρ€ΡΠΈΡŽ 1.2.3.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π½Π° собствСнный Compsoer-ΠΏΠ°ΠΊΠ΅Ρ‚

Π”Π°Π»Π΅Π΅, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠΌ наш собствСнный ΠΏΠ°ΠΊΠ΅Ρ‚ SuperLogger, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½, Π½ΠΎ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½Π΅ Π½Π° packagist.org, Π° Π½Π° github:

Π§Ρ‚ΠΎΠ±Ρ‹ Composer Π·Π½Π°Π» Π³Π΄Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Β«mycompany/superloggerΒ», ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ массив repositories со ссылкой Π½Π° ΡΠΎΠΎΡ‚Π²Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ github Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ записи Π² массивС repositories Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ связаны с Π±Π»ΠΎΠΊΠΎΠΌ require β€” ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ ΠΈ рСпозиториями Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ соотвСтствиС. На сколько я понял, Composer ΠΈΡ‰Π΅Ρ‚ всС Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π²ΠΎ всСх ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… рСпозиториях (Π² Ρ‚.Ρ‡. Π½Π° сайтС packagist.org) ΠΈ скачиваСт Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ совпадСния ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°ΠΌ. Π‘ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ я Π² этом ΠΌΠΎΠΌΠ΅Π½Ρ‚Π΅ Π΅Ρ‰Ρ‘ Π½Π΅ разбирался, ΠΏΠΎΠΏΡ€Π°Π²ΡŒΡ‚Π΅ мСня, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π·Π½Π°Π΅Ρ‚ Π΄Π΅Ρ‚Π°Π»ΠΈ.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π½Π°ΡˆΡƒ лСгаси-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ superlib, которая Π»Π΅ΠΆΠΈΡ‚ Π½Π° github, Π½ΠΎ Π½Π΅ являСтся ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΌ Composer-ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ, Ρ‚.ΠΊ. ΠΎΠ½Π° ΠΎΡ‡Π΅Π½ΡŒ старая.

Π’ массив repositories добавился ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ описываСт ΠΏΠ°ΠΊΠ΅Ρ‚ pqr/superlib. По сути, это Ρ‚ΠΎ описаниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ своСго рСпозитория. Но ΠΏΠΎ условиям Π·Π°Π΄Π°Ρ‡ΠΈ, superlib Π½Π΅ являСтся ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΌ Composer-ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ, поэтому Π½Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ описаниС Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Super Hello World ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, Π² Ρ‚.Ρ‡. простой zip Ρ„Π°ΠΉΠ».

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ простой zip Ρ„Π°ΠΉΠ»

НапримСр, Π²ΠΎΡ‚ ΠΊΠ°ΠΊ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ описаниС зависимости ΠΎΡ‚ ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° Smarty, распространяСмого Π² Π²ΠΈΠ΄Π΅ zip Ρ„Π°ΠΉΠ»Π° с исходниками Π² svn:

Π˜Π½ΡΡ‚ΡƒΠΊΡ†ΠΈΡ autoload

ВСрнёмся ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ.
ΠžΠΏΠΈΡΡ‹Π²Π°Ρ Β«pqr/superlibΒ», ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ autoload. Π’ Π½Π΅ΠΉ ΡƒΠΊΠ°Π·Π°Π½ Ρ„Π°ΠΉΠ» timer.php, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΉ Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ классы ΠΈ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Ρ„Π°ΠΉΠ» с функциями lib_functions.php β€” ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² Π½Π°Ρ‡Π°Π»Π΅ autoload.php.

ЗапускаСм composer install
Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ собствСнный Composer ΠΏΠ°ΠΊΠ΅Ρ‚?

Π’ этом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΌΡ‹ использовали Composer с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния потрСбитСля Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. А ΠΊΠ°ΠΊ самому ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Composer ΠΏΠ°ΠΊΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ смог ΠΈΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ?

На самом Π΄Π΅Π»Π΅, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² я создал, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Π» ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ для этой ΡΡ‚Π°Ρ‚ΡŒΠΈ. Π’ ΠΊΠΎΡ€Π½Π΅ рСпозитория superlogger Π»Π΅ΠΆΠΈΡ‚ Ρ„Π°ΠΉΠ» composer.json ΠΏΠΎΡ…ΠΎΠΆΠ΅ΠΉ структуры, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ описываСт сам ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈ Π΅Π³ΠΎ зависимости (Π² случаС с superlogger зависимостСй Π½Π΅Ρ‚). Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ silex ΠΈ twig, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΊΠ°Ρ‡Π°Π»ΠΈΡΡŒ Π² ΠΏΠ°ΠΏΠΊΡƒ vendor β€” всС ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ„Π°ΠΉΠ» composer.json Π² ΠΊΠΎΡ€Π½Π΅ β€” смотритС, ΠΈΠ·ΡƒΡ‡Π°ΠΉΡ‚Π΅!

И, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС getcomposer.org/doc/.
Π­Ρ‚Ρƒ Ρ‚Π΅ΠΌΡƒ я ΠΎΡΡ‚Π°Π²Π»ΡŽ Π²Π°ΠΌ для ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ΠŸΠΎΠ΄Π²Π΅Π΄Ρ‘ΠΌ ΠΈΡ‚ΠΎΠ³ΠΈ

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я рассказал, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Composer, Π΅Π³ΠΎ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈ описал основныС возмоТности. ΠœΡ‹ с Π²Π°ΠΌΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Composer для установки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² с сайта packagist.org ΠΈ ΠΈΠ· Π½Π°ΡˆΠΈΡ… собствСнных Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π².

Π’ своих Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ систСму контроля вСрсий Mercurial. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Composer с сайта bitbucket.org: http://bitbucket.org/pqr/superhelloworld

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΊ соТалСнию, ΠΏΡ€ΠΈ использовании Composer с Mercurial рСпозиториями Π½Π° Windows машинС я нашСл ΠΎΠ΄ΠΈΠ½ Π±Π°Π³. Если Π²Ρ‹ устанавливаСтС зависимости Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π½Π° дискС ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΎΡ‚ систСмного диска, Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ. НапримСр, систСмный диск C:, Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²Ρ‹ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚Π΅ Π³Π΄Π΅-Ρ‚ΠΎ Π² ΠΏΠ°ΠΏΠΊΠ΅ D:\someproject ΠΈ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ зависит ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Mercurial Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² β€” Composer Π½Π΅ смоТСт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΡ… ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ. Π‘ΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ Π² блиТайшСС врСмя ΠΏΠΎΡ„ΠΈΠΊΡΠΈΡ‚ΡŒ этот Π±Π°Π³ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ pull request Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Composer’Π°.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Руководство ΠΏΠΎ использованию Composer для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. f2409a04b785f39f066901bb9f243868. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php Ρ„ΠΎΡ‚ΠΎ. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php-f2409a04b785f39f066901bb9f243868. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° f2409a04b785f39f066901bb9f243868. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.

для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. php composer for beginners. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php Ρ„ΠΎΡ‚ΠΎ. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php-php composer for beginners. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° php composer for beginners. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассмотрим, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Composer, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Β«Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒΒ» для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ PHP Composer

НапримСр, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π² Π½Ρ‘ΠΌ ΠΌΠΎΠΆΠ½ΠΎ просто ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Β«composer.jsonΒ» ΠΈ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π² этом Ρ„Π°ΠΉΠ»Π΅ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ зависимости. ПослС этого для установки всСх Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Ρ… Π²Π½Π΅ΡˆΠ½ΠΈΡ… php ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ достаточно Π±ΡƒΠ΄Π΅Ρ‚ ввСсти Π² консоли всСго ΠΎΠ΄Π½Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ( composer install ).

ΠšΡ€ΠΎΠΌΠ΅ этого, Composer примСняСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для установки php Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Composer осущСствляСтся Ρ‚Π°ΠΊΠΆΠ΅ установка Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… php Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² (Laravel, Yii2, Symfony ΠΈ Π΄Ρ€.) ΠΈ CMS (Drupal, MODX 3 ΠΈ Π΄Ρ€.).

Composer прСдставляСт собой ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ php скрипт, Ρ‚.Π΅. ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π½Π° языкС php.

Основная Ρ†Π΅Π»ΡŒ этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ инструмСнт, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ смоТСт ΠΎΡ‡Π΅Π½ΡŒ просто Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΈΡ… ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ нСобходимости ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΈΡ… ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅. ВсС эти дСйствия Composer позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π²ΠΎΠ΄Π° всСго ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄. Π£Π΄ΠΎΠ±Π½ΠΎ, Π½Π΅ ΠΏΡ€Π°Π²Π΄Π° Π»ΠΈ?

Π’ качСствС рСпозитория ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Composer ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ packagist.org.

ΠŸΡ€ΠΈ установкС php ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Composer Π½Π΅ просто устанавливаСт ΠΈΡ…, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ устанавливаСт всС зависимости, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… эти ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ зависят. Π’.Π΅., Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли загруТаСмая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ 3 Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Π° каТдая ΠΈΠ· Π½ΠΈΡ…, Π΅Ρ‰Ρ‘ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΎΡ‚ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, Ρ‚ΠΎ Composer всё это установит автоматичСски. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, Ρ‚.Π΅. Π±Π΅Π· использования Composer, Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΈ установку основных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ всСх зависимостСй придётся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Composer выполняСт Π² ΠΏΠ°ΠΏΠΊΡƒ Β«vendorΒ», ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π΄Π°Π½Π½Ρ‹ΠΉ php скрипт создаёт Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠšΡ€ΠΎΠΌΠ΅ этого, ΠΎΠ½ Π΅Ρ‰Ρ‘ создаёт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Β«autoload.phpΒ», Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²Ρ‹ сразу ΠΆΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊ Π½Π΅ΠΌΡƒ всС Ρ€Π°Π½Π΅Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Β«composer.lockΒ» Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ сохранСнии срСды, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ»Π°ΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ тСстированиС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π Π°Π±ΠΎΡ‚Π° с Composer осущСствляСтся Π² основном Π² консольном ΠΈΠ»ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Ρ‚.Π΅. с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π²ΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку.

ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт Composer располоТСн ΠΏΠΎ адрСсу https://getcomposer.org

Если Π²Ρ‹ использовали npm, Ρ‚ΠΎ Π‘omposer – это Π½Π΅Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ для Β«node.jsΒ», Π° для php.

Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Composer

Установка Composer ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ. Она Ρ‚Π°ΠΊΠΆΠ΅ зависит ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ срСды ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. Рассмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹.

Установка Composer Π² Ubuntu, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅ΠΉΡΡ Π² подсистСмС Windows для Linux (WSL)

Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Π΅Π±-сСрвСр для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ php ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° подсистСму Windows для Linux Π² Windows 10 ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Для установки Composer Π² Windows 10 Π½Π° подсистСму Windows для Linux (WSL) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° выполняСт Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ скрипта установщика с сайта Β«getcomposer.orgΒ». Вторая ΠΊΠΎΠΌΠ°Π½Π΄Π° выполняСт запуск этого установщика. Π’ процСссС своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ установщик ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ настройки Β«php.iniΒ», ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅Π΄ΠΈΡ‚ вас, Ссли ΠΎΠ½ΠΈ установлСны Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ послСдний Β«composer.pharΒ» Π² Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³. ПослСдняя ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° просто ΡƒΠ΄Π°Π»ΠΈΡ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΉ установщик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π½Π΅Π΅ использовался для установки Composer.

Phar β€” это исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹ (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ посрСдством php ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°.

Если ΠΏΡ€ΠΈ установкС php ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρƒ вас Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ошибки Π½Π° отсутствиС ΠΏΡ€Π°Π² записи Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Β«

/.composer/cacheΒ», Ρ‚ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС просто запуститС Π΄Π°Π½Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° пСрСмСстит Ρ„Π°ΠΉΠ» Β«composer.pharΒ» ΠΈΠ· Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ Β«/usr/local/binΒ» ΠΈ ΡƒΠ±Π΅Ρ€Ρ‘Ρ‚ Ρƒ Π½Π΅Π³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Β«pharΒ».

Установка Composer Π½Π° OpenServer (Π² Windows)

Π’ OpenServer ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠΆΠ΅ установлСн Composer. Находится ΠΎΠ½ Π² зависимости ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ вСрсии PHP (устанавливаСтся Π² настройках OpenServer) Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Β«OSPanel\modules\PHP_*\Β».

Π Π°Π±ΠΎΡ‚Π° с Composer Π² OpenServer ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ осущСствляСтся Π² собствСнной консоли. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ эту консоль Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Π·Π½Π°Ρ‡ΠΎΠΊ Open Server ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ Π² области ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΈ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ контСкстном мСню Π½Π°ΠΉΡ‚ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚.

для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. openserver menu item for opening console. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php Ρ„ΠΎΡ‚ΠΎ. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php-openserver menu item for opening console. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° openserver menu item for opening console. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.

Π’ консоли для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Composer ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ввСсти ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. openserver console. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php Ρ„ΠΎΡ‚ΠΎ. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php-openserver console. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° openserver console. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ Π²Π΅Ρ€ΡΠΈΡŽ Composer.

Если ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ отобразится сообщСниС, Ρ‡Ρ‚ΠΎ вСрсия Composer устарСла, Ρ‚ΠΎ Π΅Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ. ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ΅Ρ‚ΡΡ это посрСдством выполнСния ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Установка Composer Π½Π° хостинг

Для установки Composer Π½Π° хостинг, ΠΌΠΎΠΆΠ½ΠΎ просто ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΅Ρ‘ Π² ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ FTP.

Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½ΡƒΠΆΠ½ΠΎΠΉ вСрсии Composer выполняСтся со страницы Β«DownloadΒ». ВСрсии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π΄Π°Π½Π½ΠΎΠΉ страницС располоТСны Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«Manual DownloadΒ».

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΌ сСрвСрС ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SSH. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° shared хостингах Π΄Π°Π½Π½Ρ‹ΠΉ сСтСвой ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½. Для Π΅Π³ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡ‚ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Π² ΠΏΠ°Π½Π΅Π»ΠΈ управлСния, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π² Π½Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ SSHΒ».

Если Π²Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Windows 10, Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ SSH Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² систСму ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ сСрвСрС, ΠΌΠΎΠΆΠ½ΠΎ Π² этой вСрсии Windows Π½Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ софт, Π° Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ «Командная строка» ΠΈΠ»ΠΈ Β«Windows PowerShellΒ».

для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ssh composer. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php Ρ„ΠΎΡ‚ΠΎ. для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php-ssh composer. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ composer php. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ssh composer. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для поиска ΠΈ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ ΠΈΡ… названию.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Composer

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ основныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Composer для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Β«composer.pharΒ» локально, Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ соотвСтствСнно ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ настроСно вашС ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅.

НапримСр, Ссли Ρ„Π°ΠΉΠ» Β«composer.pharΒ» находится Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ php доступСн Π±Π΅Π· указания ΠΏΡƒΡ‚ΠΈ ΠΊ Π½Π΅ΠΌΡƒ, Ρ‚ΠΎ установка ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ Ρ‚Π°ΠΊ:

Установка ΠΏΠ°ΠΊΠ΅Ρ‚Π°

Установка ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ‡Π΅Ρ€Π΅Π· Composer осущСствляСтся посрСдством выполнСния ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

vendor β€” это имя поставщика php ΠΏΠ°ΠΊΠ΅Ρ‚Π°, Π° package β€” это Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅.

НапримСр, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π° twig Ρ‡Π΅Ρ€Π΅Π· composer Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ Ρ‚Π°ΠΊ:

Команда require Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π½ΠΎ ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡˆΠ΅Ρ‚ Π΅Ρ‘ Π΅Ρ‰Ρ‘ Π² Ρ„Π°ΠΉΠ»Π΅ Β«composer.jsonΒ», Ρ‚.Π΅. ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ Π΅Π³ΠΎ. Если устанавливаСмый ΠΏΠ°ΠΊΠ΅Ρ‚ зависит ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Ρ‚ΠΎ ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ установлСны ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ этого Π΅Ρ‰Ρ‘ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½ Ρ„Π°ΠΉΠ» Β«composer.lockΒ».

Установка всСх ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

Установка сразу всСх ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ осущСствляСтся посрСдством ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ОбновлСниС зависимостСй

Команда для обновлСния установлСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ:

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ всС зависимости установлСнныС Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π΄ΠΎ послСдних вСрсий (Π² соотвСтствии с Β«composer.jsonΒ») ΠΈ Ρ„Π°ΠΉΠ» Β«composer.lockΒ».

Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π΅ всС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько, Ρ‚ΠΎ ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π».

Команда для обновлСния ΠΎΠ΄Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ:

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°

Команда Composer для удалСния ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

Для удалСния ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π»:

ОбновлСниС Composer

Команда для обновлСния Π‘omposer Π΄ΠΎ послСднСй вСрсии:

ОбновлСниС lock Ρ„Π°ΠΉΠ»Π° Π±Π΅Π· обновлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

Для обновлСния Ρ„Π°ΠΉΠ»Π° Β«composer.lockΒ» Π±Π΅Π· обновлСния самих ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²:

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ выполняСтся Ρ‚Π°ΠΊ:

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ выполняСтся Ρ‚Π°ΠΊ:

Π’Ρ‹Π²ΠΎΠ΄ всСх установлСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Команда для отобраТСния всСх установлСнных php ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²:

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° валидности Ρ„Π°ΠΉΠ»Π° Β«composer.jsonΒ»

Команда с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Π° Β«composer.jsonΒ»:

Π’Ρ‹Π²ΠΎΠ΄ списка всСх доступных ΠΊΠΎΠΌΠ°Π½Π΄

ВывСсти Π½Π° экран всС доступныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Composer ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊ:

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ кэша ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Composer

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ очистки Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ кэша ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Composer осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ справки ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ справки ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅:

НапримСр, вывСсти ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ ΠΏΠΎ использованию ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ require ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ВывСсти зависимости для ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°

ВывСсти всС зависимости ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Ρ„Π°ΠΉΠ»Π° composer.json с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ мастСра

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Ρ„Π°ΠΉΠ»Π° composer.json с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ мастСра, Ρ‚.Π΅. посрСдством ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π½Π° вопросы:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования Composer для установки PHP Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² ΠΈ CMS

Установка Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Laravel Π² Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· Composer посрСдством Π²Π²ΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Установка послСднСй вСрсии Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Yii2 Ρ‡Π΅Ρ€Π΅Π· Composer:

Установка Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ вСрсии MODX Revolution 3 Ρ‡Π΅Ρ€Π΅Π· Composer:

Установка Ρ‡Π΅Ρ€Π΅Π· Composer Π½ΠΎΠ²ΠΎΠ³ΠΎ прилоТСния Symfony, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ для создания Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ:

Установка Symfony для использования Π΅Π³ΠΎ для создания микросСрвисов, ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ API осущСствляСтся Ρ‚Π°ΠΊ:

Установка Drupal Ρ‡Π΅Ρ€Π΅Π· Composer:

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Composer

Composer β€” это Ρ„Π°ΠΉΠ». Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв для удалСния Π΅Π³ΠΎ достаточно просто ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ.

Если Π²Ρ‹ Π½Π΅ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΊΡƒΠ΄Π° Π±Ρ‹Π» установлСн Composer, Ρ‚ΠΎ просто ΠΏΠΎΠΈΡ‰Π΅Ρ‚Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной систСмы поиска ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы этот Ρ„Π°ΠΉΠ».

Но Ρ‚Π°ΠΊ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π½Π΅ всСгда ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, всС зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π΅Π³ΠΎ устанавливали. Если Ρƒ инструмСнта, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ Π΅Π³ΠΎ устанавливали, Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π΅Π³ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ выполняйтС это дСйствиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого инструмСнта.

НапримСр, Ссли Π²Ρ‹ Composer устанавливали с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ инструмСнта apt-get, Ρ‚ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΅Π³ΠΎ для удалСния этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

НапримСр, Ссли Π²Ρ‹ устанавливали Π‘opmoser Π² Windows с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Composer-Setup.exe, Ρ‚ΠΎ удалСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ выполняйтС стандартным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ‡Π΅Ρ€Π΅Π· «ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ возмоТности» (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Windows 10) ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· «Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹».

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ с Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ кэшСм Composer. Π’ Linux эта ΠΏΠ°ΠΏΠΊΠ° располоТСна Π² Β«/home//.composerΒ», Π² Windows – Β«C:\Users\\AppData\Roaming\ComposerΒ».

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *