Pembungkus kecil dan independen untuk mendapatkan versi string dependensi Anda yang cantik.
^1.5 || ^2.0 , untuk mendapatkan semua fungsi tanpa membatasi pengguna akhir Anda untuk segera meningkatkan ke Komposer 2.Untuk menginstal, gunakan Komposer:
composer require 'jean85/pretty-package-versions:^1.5 || ^2.0'composer.json Anda : {
"require" : {
"jean85/pretty-package-versions" : " ^1.5 || ^2.0 "
}
} Paket ini lahir sebagai pembungkus tipis untuk ocramius/versi paket; dengan munculnya Composer 2, hal ini tidak diperlukan lagi, karena kita dapat menggunakan ComposerInstalledVersions secara langsung. Hal ini menghasilkan bagan kompatibilitas versi ini:
pretty-package-versions | Komposer | Ketergantungan digunakan |
|---|---|---|
| Hingga 1.2 | 1.x saja | ocramius/package-versions |
| 1.3 | Baik 1.x dan 2.x | composer/package-versions-deprecated , cabang dari ocramius/package-versions |
| 1.4 | 2.x saja | Tidak ada |
| 1,5+ | Baik 1.x dan 2.x | composer/package-versions-deprecated , cabang dari ocramius/package-versions |
| 2.0 | 2.x saja | Tidak ada |
Artinya, dengan paket ini, Anda bisa mendapatkan versi cantik tanpa mengikat pengguna Anda ke versi Komposer tertentu, dengan jalur peningkatan yang lancar. Rilis 1.4 dikembalikan karena beberapa diskusi di #21 dan masalah terkait.
Paket ini harus digunakan dengan satu kelas, Jean85PrettyVersions : paket ini menyediakan metode tunggal yang mengembalikan objek Jean85Version untuk paket yang diminta, seperti dalam contoh ini:
use Jean85 PrettyVersions ;
$ version = PrettyVersions:: getVersion ( ' phpunit/phpunit ' );
$ version -> getPrettyVersion (); // '6.0.0'
$ version -> getShortVersion (); // '6.0.0'
$ version -> getVersionWithShortReference (); // '6.0.0@fa5711'
$ version = PrettyVersions:: getVersion ( ' roave/security-advisories ' );
$ version -> getPrettyVersion (); // 'dev-master@7cd88c8'
$ version -> getShortVersion (); // 'dev-master'
$ version -> getVersionWithShortReference (); // 'dev-master@7cd88c8' Kelas Version juga menerapkan metode __toString() , sehingga dapat dengan mudah dilemparkan ke string; hasilnya akan sama dengan memanggil metode getPrettyVersion() .
Kelas Jean85Version menyediakan metode publik berikut:
getPrettyVersion(): string : jika paket yang diminta adalah versi yang diberi tag, paket tersebut hanya akan mengembalikan versi pendeknya; jika tidak, hasilnya akan sama seperti getVersionWithShortCommit()
getShortVersion(): string : ini hanya akan mengembalikan versi paket (yaitu 6.0.0 , v.1.7.0 , 99999-dev dll...)
getReference(): string akan mengembalikan referensi paket yang diinstal, umumnya hash penerapan Git lengkap
getShortReference(): string akan mengembalikan versi referensi yang dipersingkat (yaitu fa5711 )
getVersionWithShortReference(): string : ini akan mengembalikan versi paket, diikuti dengan versi pendek referensi (yaitu 6.0.0@fa5711 )
getPackageName(): string akan mengembalikan nama paket asli
getFullVersion(): string akan mengembalikan nilai yang sama dengan PackageVersionsVersions::getVersion()
__toString(): string akan kembali sama seperti getPrettyVersion()
Sejak rilis 1.5, ada dua metode tambahan yang tersedia:
PrettyVersions::getRootPackageName mengembalikan nama paket proyek (root) saat ini, jadi pada dasarnya nilai properti name di composer.json Anda; ini adalah lapisan kompatibilitas yang akan digunakan sebagai pengganti PackageVersionsVersions::ROOT_PACKAGE_NAME , yang merupakan ketergantungan sementara dan tidak dijamin akan adaPrettyVersions::getRootPackageVersion , yang merupakan pintasan ke PrettyVersions::getVersion(PrettyVersions::getRootPackageName()) Metode dengan reference pada namanya diperkenalkan pada rilis 2.0, untuk lebih mencerminkan arti data yang diambil dari Composer 2 API. Perilakunya sama dengan metode lama, yang masih ada namun tidak digunakan lagi:
| Metode baru | Metode lama dan tidak digunakan lagi |
|---|---|
Version::getReference() | Version::getCommitHash() |
Version::getShortReference() | Version::getShortCommitHash() |
Version::getVersionWithShortReference() | Version::getVersionWithShortCommit() |