Respostas:
Corra app/console --version
(para Symfony3 :) bin/console --version
, ele deve lhe dar uma boa idéia. Em um projeto aleatório meu, a saída é:
Symfony version 2.2.0-DEV - app/dev/debug
Se você não puder acessar o console, tente ler symfony/src/Symfony/Component/HttpKernel/Kernel.php
, onde a versão está codificada , por exemplo:
const VERSION = '2.2.0';
Apenas no caso de você estar se perguntando, console
cria uma instância de Symfony\Bundle\FrameworkBundle\Console\Application
. Neste construtor de classe, ele usa Symfony\Component\HttpKernel\Kernel::VERSION
para inicializar seu construtor pai.
/Symfony/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
bin/console --version
Outra maneira é procurar a fonte Symfony\Component\HttpKernel\Kernel
para onde const VERSION
está definido. Exemplo no GitHub
Localmente, isso seria localizado em vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
.
Embora já existam muitas boas respostas, gostaria de adicionar uma opção que não foi mencionada. Usando o comando:
php bin/console about
você pode obter muitos detalhes sobre o projeto atual. A primeira seção é sobre o Symfony e é assim:
-------------------- -------------------------------------------
Symfony
-------------------- -------------------------------------------
Version 4.2.3
End of maintenance 07/2019
End of life 01/2020
-------------------- -------------------------------------------
Acho as outras informações além do número da versão muito úteis.
Há também outras seções que fornecem detalhes sobre o Kernel (framework), PHP, Ambiente.
Use o seguinte comando no seu Terminal / Prompt de Comando:
php bin/console --version
Isso fornecerá a sua versão do Symfony.
Se você deseja exibir dinamicamente sua versão do Symfony 2 em páginas, por exemplo, no rodapé, é possível fazê-lo dessa maneira.
Crie um serviço:
<?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;
}
}
Registre-se em service.yml
dut.twig.symfony_version_extension:
class: Project\Bundle\DutBundle\Twig\SymfonyVersionExtension
tags:
- { name: twig.extension }
#arguments: []
E você pode chamá-lo em qualquer lugar. No Controller, envolva-o em JSON ou no rodapé de exemplo de páginas
<p> Built With Symfony {{ symfony_version() }} Version MIT License</p>
Agora, toda vez que você executa a atualização do compositor para atualizar seu fornecedor, a versão do symfony também é atualizada automaticamente em seu modelo.
você também pode verificar a versão do symfony e as versões de todos os outros pacotes instalados executando
composer show
ou
composer show | grep sonata
para obter versões de pacotes específicos como sonata etc.
podemos encontrar a versão symfony usando o arquivo Kernel.php, mas o problema é a localização do Kernal Will muda de versão para versão (melhor pesquisa de arquivos no diretório de projetos)
no symfony 3.0: my_project \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ HttpKernel \ Kernel.php
Verifique no arquivo Controller / PHP
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
echo $symfony_version; // this will return version; **o/p:3.0.4-DEV**
De dentro do seu projeto Symfony, você pode obter o valor em PHP da seguinte maneira:
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
se você estiver no app_dev, poderá encontrar a versão symfony no canto inferior esquerdo da página
Para Symfony 3.4
Verifique a constante neste arquivo vendor / symfony / http-kernel / Kernel.php
const VERSION = '3.4.3';
OU
composer show | grep symfony/http-kernel
composer show
comando.