ฉันรู้ว่าฉันได้ดาวน์โหลดSymfony2
โครงการและเริ่มต้นด้วย แต่ฉันได้อัปเดตผู้ขายของฉันหลายครั้งและฉันต้องการทราบว่าฉันมี symfony เวอร์ชันใด
ความคิดใด ๆ ?
ฉันรู้ว่าฉันได้ดาวน์โหลดSymfony2
โครงการและเริ่มต้นด้วย แต่ฉันได้อัปเดตผู้ขายของฉันหลายครั้งและฉันต้องการทราบว่าฉันมี symfony เวอร์ชันใด
ความคิดใด ๆ ?
คำตอบ:
เรียกใช้app/console --version
(สำหรับ Symfony3 :) bin/console --version
ควรให้ความคิดที่ดี ในโครงการสุ่มของฉันผลลัพธ์คือ:
Symfony version 2.2.0-DEV - app/dev/debug
หากคุณไม่สามารถเข้าถึงคอนโซลได้ให้ลองอ่านsymfony/src/Symfony/Component/HttpKernel/Kernel.php
ซึ่งเป็นเวอร์ชันฮาร์ดโค้ดตัวอย่างเช่น
const VERSION = '2.2.0';
ในกรณีที่คุณสงสัยให้console
สร้างตัวอย่างของSymfony\Bundle\FrameworkBundle\Console\Application
ไฟล์. ในตัวสร้างคลาสนี้ใช้Symfony\Component\HttpKernel\Kernel::VERSION
เพื่อเริ่มต้นคอนสตรัคเตอร์พาเรนต์
/Symfony/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
bin/console --version
อีกวิธีหนึ่งคือการดูแหล่งที่มาSymfony\Component\HttpKernel\Kernel
สำหรับตำแหน่งที่const VERSION
กำหนด ตัวอย่างบนGitHub
สิ่งนี้จะอยู่ในvendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
พื้นที่
แม้ว่าจะมีคำตอบที่ดีมากมายอยู่แล้ว แต่ฉันก็อยากจะเพิ่มตัวเลือกที่ยังไม่ได้กล่าวถึง ใช้คำสั่ง:
php bin/console about
คุณสามารถรับรายละเอียดมากมายเกี่ยวกับโครงการปัจจุบัน ส่วนแรกเกี่ยวกับ Symfony เองและมีลักษณะดังนี้:
-------------------- -------------------------------------------
Symfony
-------------------- -------------------------------------------
Version 4.2.3
End of maintenance 07/2019
End of life 01/2020
-------------------- -------------------------------------------
ฉันพบว่าข้อมูลอื่น ๆ นอกเหนือจากหมายเลขเวอร์ชันมีประโยชน์มาก
นอกจากนี้ยังมีส่วนอื่น ๆ ที่ให้รายละเอียดเกี่ยวกับ (framework) Kernel, PHP, Environment
ใช้คำสั่งต่อไปนี้ใน Terminal / Command Prompt ของคุณ:
php bin/console --version
สิ่งนี้จะให้เวอร์ชัน Symfony ของคุณ
หากคุณต้องการแสดงเวอร์ชัน Symfony 2 ของคุณแบบไดนามิกในหน้าต่างๆเช่นในส่วนท้ายคุณสามารถทำได้ด้วยวิธีนี้
สร้างบริการ:
<?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;
}
}
ลงทะเบียนใน service.yml
dut.twig.symfony_version_extension:
class: Project\Bundle\DutBundle\Twig\SymfonyVersionExtension
tags:
- { name: twig.extension }
#arguments: []
และคุณสามารถโทรหาได้ทุกที่ ในตัวควบคุมให้รวมไว้ใน JSON หรือในส่วนท้ายของหน้า
<p> Built With Symfony {{ symfony_version() }} Version MIT License</p>
ทุกครั้งที่คุณเรียกใช้การอัปเดตผู้แต่งเพื่ออัปเดตผู้ขายของคุณเวอร์ชัน symfony จะอัปเดตในเทมเพลตของคุณโดยอัตโนมัติฉันรู้ว่านี่เป็นการใช้งานมากเกินไป แต่นี่เป็นวิธีที่ฉันทำในโครงการของฉันและมันใช้งานได้
นอกจากนี้คุณสามารถตรวจสอบเวอร์ชันของ symfony และเวอร์ชันของแพ็คเกจที่ติดตั้งอื่น ๆ ทั้งหมดได้โดยการเรียกใช้
composer show
หรือ
composer show | grep sonata
เพื่อรับเวอร์ชันของแพ็คเกจเฉพาะเช่นโซนาต้าเป็นต้น
เราสามารถค้นหาเวอร์ชัน symfony โดยใช้Kernel.phpไฟล์แต่ปัญหาคือตำแหน่งของ Kernal Will เปลี่ยนจากเวอร์ชันเป็นเวอร์ชัน (Better Do File Search ใน Project Directory ของคุณ)
ใน symfony 3.0: my_project \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ HttpKernel \ Kernel.php
ตรวจสอบจากไฟล์ Controller / PHP
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
echo $symfony_version; // this will return version; **o/p:3.0.4-DEV**
หากคุณลองใช้เวอร์ชัน symfony
โปรดลองด้วย
สัญลักษณ์ 2 +
cmd> แอป php / คอนโซล - เวอร์ชัน
symfony 3+
cmd> php bin / console --version
ตัวอย่างเช่น
D: project> php bin / console --version
Symfony 3.2.8 (kernel: app, env: dev, debug: true)
จากภายในโครงการ Symfony ของคุณคุณสามารถรับค่าใน PHP ด้วยวิธีนี้:
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
หากคุณอยู่ใน app_dev คุณสามารถค้นหาเวอร์ชัน symfony ได้ที่มุมล่างซ้ายของหน้า
สำหรับ Symfony 3.4.2
ตรวจสอบค่าคงที่ในไฟล์นี้ / symfony / http-kernel / Kernel.php
const VERSION = '3.4.3';
หรือ
composer show | grep symfony/http-kernel
composer show
คำสั่ง