Jawaban:
Jalankan app/console --version
(untuk Symfony3 :) bin/console --version
, itu akan memberi Anda ide yang cukup bagus. Pada proyek acak saya, hasilnya adalah:
Symfony version 2.2.0-DEV - app/dev/debug
Jika Anda tidak dapat mengakses konsol, coba baca symfony/src/Symfony/Component/HttpKernel/Kernel.php
, dengan versi yang di- hardcode , misalnya:
const VERSION = '2.2.0';
Untuk berjaga-jaga jika Anda bertanya-tanya, console
buat instance Symfony\Bundle\FrameworkBundle\Console\Application
. Dalam konstruktor kelas ini, ia menggunakan Symfony\Component\HttpKernel\Kernel::VERSION
untuk menginisialisasi konstruktor induknya.
/Symfony/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
bin/console --version
Cara lain adalah dengan melihat sumber di Symfony\Component\HttpKernel\Kernel
mana const VERSION
didefinisikan. Contoh di GitHub
Secara lokal ini akan berlokasi di vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
.
Meskipun sudah ada banyak jawaban bagus, saya ingin menambahkan opsi yang belum disebutkan. Menggunakan perintah:
php bin/console about
Anda bisa mendapatkan banyak detail tentang proyek saat ini. Bagian pertama adalah tentang Symfony itu sendiri dan terlihat seperti ini:
-------------------- -------------------------------------------
Symfony
-------------------- -------------------------------------------
Version 4.2.3
End of maintenance 07/2019
End of life 01/2020
-------------------- -------------------------------------------
Saya menemukan informasi lain selain nomor versi sangat berguna.
Ada juga bagian lain yang memberikan detail tentang (kerangka kerja) Kernel, PHP, Lingkungan.
Gunakan perintah berikut di Terminal / Command Prompt Anda:
php bin/console --version
Ini akan memberi Anda Versi Symfony Anda.
Jika Anda ingin menampilkan versi Symfony 2 Anda secara dinamis di halaman, misalnya di footer, Anda dapat melakukannya dengan cara ini.
Buat layanan:
<?php
namespace Project\Bundle\DuBundle\Twig;
class SymfonyVersionExtension extends \Twig_Extension
{
public function getFunctions()
{
return array(
//this is the name of the function you will use in twig
new \Twig_SimpleFunction('symfony_version', array($this, 'b'))
);
}
public function getName()
{
//return 'number_employees';
return 'symfony_version_extension';
}
public function b()
{
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
return $symfony_version;
}
}
Daftar di service.yml
dut.twig.symfony_version_extension:
class: Project\Bundle\DutBundle\Twig\SymfonyVersionExtension
tags:
- { name: twig.extension }
#arguments: []
Dan Anda bisa menyebutnya di mana saja. Di Controller, bungkus dalam JSON, atau di footer contoh halaman
<p> Built With Symfony {{ symfony_version() }} Version MIT License</p>
Sekarang setiap kali Anda menjalankan pembaruan komposer untuk memperbarui vendor Anda, versi symfony juga akan secara otomatis memperbarui di template Anda. Saya tahu ini berlebihan tetapi ini adalah cara saya melakukannya dalam proyek saya dan berhasil.
Anda juga dapat memeriksa versi symfony dan versi dari semua paket terinstal lainnya dengan menjalankan
composer show
atau
composer show | grep sonata
untuk mendapatkan versi paket tertentu seperti sonata dll.
kita dapat menemukan versi symfony menggunakan file Kernel.php tetapi masalahnya adalah Lokasi Kernal Akan berubah dari versi ke versi (Lebih baik Lakukan Pencarian File di Direktori Proyek Anda)
di symfony 3.0: my_project \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ HttpKernel \ Kernel.php
Periksa dari Controller / File PHP
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
echo $symfony_version; // this will return version; **o/p:3.0.4-DEV**
Dari dalam proyek Symfony Anda, Anda bisa mendapatkan nilai dalam PHP dengan cara ini:
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
jika Anda berada di app_dev, Anda dapat menemukan versi symfony di pojok kiri bawah halaman
Untuk Symfony 3.4
Periksa konstanta dalam file ini vendor / symfony / http-kernel / Kernel.php
const VERSION = '3.4.3';
ATAU
composer show | grep symfony/http-kernel
composer show
perintah.