답변:
실행하면 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
이미 좋은 답변이 많이 있지만 언급되지 않은 옵션을 추가하고 싶습니다. 명령 사용 :
php bin/console about
현재 프로젝트에 대한 많은 세부 정보를 얻을 수 있습니다. 첫 번째 섹션은 Symfony 자체에 관한 것이며 다음과 같습니다.
-------------------- -------------------------------------------
Symfony
-------------------- -------------------------------------------
Version 4.2.3
End of maintenance 07/2019
End of life 01/2020
-------------------- -------------------------------------------
버전 번호 외에 다른 정보도 매우 유용합니다.
(프레임 워크) 커널, PHP, 환경에 대한 세부 정보를 제공하는 다른 섹션도 있습니다.
터미널 / 명령 프롬프트에서 다음 명령을 사용하십시오.
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: []
그리고 어디에서나 전화를 걸 수 있습니다. Controller에서 JSON 또는 페이지 예제 바닥 글로 래핑합니다.
<p> Built With Symfony {{ symfony_version() }} Version MIT License</p>
이제 컴포저 업데이트를 실행하여 벤더를 업데이트 할 때마다 심포니 버전도 템플릿에서 자동으로 업데이트됩니다. 과잉이지만 이것이 제 프로젝트에서 수행하는 방식이며 작동하고 있습니다.
Kernel.php를 사용하여 심포니 버전을 찾을 수 있습니다. 파일을 있지만 문제는 커널 위치가 버전마다 변경된다는 것입니다 (프로젝트 디렉토리에서 파일 검색을 더 잘 수행).
심포니 3.0 : my_project \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ HttpKernel \ Kernel.php
컨트롤러 / PHP 파일에서 확인
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
echo $symfony_version; // this will return version; **o/p:3.0.4-DEV**
Symfony 프로젝트 내부에서 다음과 같이 PHP로 값을 얻을 수 있습니다.
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
app_dev에있는 경우 페이지 왼쪽 하단에서 심포니 버전을 찾을 수 있습니다.
composer show
입니다.