Respuestas:
Ejecuta app/console --version
(para Symfony3:) bin/console --version
, debería darte una idea bastante buena. En un proyecto mío al azar, el resultado es:
Symfony version 2.2.0-DEV - app/dev/debug
Si no puede acceder a la consola, intente leer symfony/src/Symfony/Component/HttpKernel/Kernel.php
, donde la versión está codificada , por ejemplo:
const VERSION = '2.2.0';
En caso de que te lo estés preguntando, console
crea una instancia de Symfony\Bundle\FrameworkBundle\Console\Application
. En este constructor de clases, se usa Symfony\Component\HttpKernel\Kernel::VERSION
para inicializar su constructor padre.
/Symfony/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
bin/console --version
Otra forma es mirar la fuente para Symfony\Component\HttpKernel\Kernel
saber dónde const VERSION
se define. Ejemplo en GitHub
Localmente esto estaría ubicado en vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php
.
Aunque ya hay muchas buenas respuestas, me gustaría agregar una opción que no se ha mencionado. Usando el comando:
php bin/console about
Puede obtener muchos detalles sobre el proyecto actual. La primera sección trata sobre Symfony y se ve así:
-------------------- -------------------------------------------
Symfony
-------------------- -------------------------------------------
Version 4.2.3
End of maintenance 07/2019
End of life 01/2020
-------------------- -------------------------------------------
Encuentro la otra información además del número de versión muy útil.
También hay otras secciones que proporcionan detalles sobre el Kernel (marco), PHP, Entorno.
Use el siguiente comando en su Terminal / Símbolo del sistema:
php bin/console --version
Esto te dará tu versión de Symfony.
Si desea mostrar dinámicamente su versión de Symfony 2 en páginas, por ejemplo en el pie de página, puede hacerlo de esta manera.
Crea un servicio:
<?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;
}
}
Registrarse en service.yml
dut.twig.symfony_version_extension:
class: Project\Bundle\DutBundle\Twig\SymfonyVersionExtension
tags:
- { name: twig.extension }
#arguments: []
Y puedes llamarlo a cualquier parte. En Controller, ajústelo en JSON o en el pie de página de ejemplo
<p> Built With Symfony {{ symfony_version() }} Version MIT License</p>
Ahora, cada vez que ejecute la actualización del compositor para actualizar su proveedor, la versión de Symfony también se actualizará automáticamente en su plantilla. Sé que esto es excesivo, pero así es como lo hago en mis proyectos y está funcionando.
También puede verificar la versión de Symfony y las versiones de todos los demás paquetes instalados ejecutando
composer show
o
composer show | grep sonata
para obtener versiones de paquetes específicos como sonata, etc.
podemos encontrar la versión de Symfony usando el archivo Kernel.php , pero el problema es que la ubicación de Kernal Will cambia de una versión a otra (Better Do File Search en su directorio de proyectos)
en Symfony 3.0: my_project \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ HttpKernel \ Kernel.php
Verificación desde el controlador / archivo PHP
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
echo $symfony_version; // this will return version; **o/p:3.0.4-DEV**
Desde el interior de su proyecto Symfony, puede obtener el valor en PHP de esta manera:
$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
si está en app_dev, puede encontrar la versión de Symfony en la esquina inferior izquierda de la página
Para Symfony 3.4
Verifique la constante en este archivo vendor / symfony / http-kernel / Kernel.php
const VERSION = '3.4.3';
O
composer show | grep symfony/http-kernel
composer show
comando.