Woher weiß ich, welche Version von Symfony ich habe?

Lesezeit: 4 Minuten

Ich weiß, dass ich eine heruntergeladen habe Symfony2 Projekt und begann mit, aber ich habe meinen Anbieter mehrmals aktualisiert und möchte wissen, welche Version von Symfony ich habe

Irgendeine Idee ?

  • sonata-project/core-bundle ist die Version 2.3.9 und sonata-project/admin-bundle ist die Version 2.3.7 composer show Befehl.

    – Bürgermeister des Plattenbaus

    3. September 2018 um 9:01 Uhr

Benutzer-Avatar
Diego Agulló

Laufen app/console --version (für Symfony3: bin/console --version), sollte es Ihnen eine ziemlich gute Vorstellung geben. Bei einem zufälligen Projekt von mir lautet die Ausgabe:

Symfony version 2.2.0-DEV - app/dev/debug

Wenn Sie nicht auf die Konsole zugreifen können, versuchen Sie es mit Lesen symfony/src/Symfony/Component/HttpKernel/Kernel.phpwo die Version ist fest codiertzum Beispiel:

const VERSION         = '2.2.0';

Nur falls Sie sich fragen, console erstellt eine Instanz von Symfony\Bundle\FrameworkBundle\Console\Application. In diesem Klassenkonstruktor verwendet es Symfony\Component\HttpKernel\Kernel::VERSION um seinen übergeordneten Konstruktor zu initialisieren.

  • oder schau einfach oben links in der symfony dev bar nach ( sichtbar nur in dev mod ) !

    – zizoujab

    9. August 2013 um 19:56 Uhr

  • Vielen Dank, habe es gefunden /Symfony/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php

    – HMR

    23. September 2013 um 10:47 Uhr

  • für mich ist es bin/console --version

    – Schwarz

    20. April 2016 um 13:53 Uhr

  • @Black, das liegt daran, dass Sie es in Symfony3 so überprüfen. Die Antwort von OP ist für symfony2

    – iii

    7. September 2017 um 15:31 Uhr

  • Es ist hilfreich für mich zu wissen, dass die Konsole eine PHP-Datei ist. Also einfach tippen app/console ... etc. auf der Kommandozeile tut nichts (bei mir). Aber php app/console --version führt die Datei erfolgreich aus. (Vielleicht haben Leute oft einen PHP-Interpreter für die Umgebung ihrer Shell eingerichtet?)

    – GG2

    7. Dezember 2018 um 19:57 Uhr

Benutzer-Avatar
cezar

Obwohl es bereits viele gute Antworten gibt, möchte ich eine Option hinzufügen, die nicht erwähnt wurde. Verwenden des Befehls:

php bin/console about

Sie können viele Details über das aktuelle Projekt erfahren. Der erste Abschnitt handelt von Symfony selbst und sieht so aus:

-------------------- ------------------------------------------- 
 Symfony                                                         
-------------------- ------------------------------------------- 
 Version              4.2.3                                      
 End of maintenance   07/2019                                    
 End of life          01/2020                                    
-------------------- ------------------------------------------- 

Ich finde die anderen Informationen neben der Versionsnummer sehr nützlich.

Es gibt auch andere Abschnitte, die Details über den (Framework-)Kernel, PHP und die Umgebung enthalten.

Eine andere Möglichkeit ist, sich die Quelle anzusehen Symfony\Component\HttpKernel\Kernel für wo const VERSION ist definiert. Beispiel an GitHub

Lokal würde sich das in befinden vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php.

Benutzer-Avatar
Benutzer2815519

Verwenden Sie den folgenden Befehl in Ihrem Terminal / Ihrer Eingabeaufforderung:

php bin/console --version

Dadurch erhalten Sie Ihre Symfony-Version.

Sie können auch die Version von Symfony und Versionen aller anderen installierten Pakete überprüfen, indem Sie ausführen

composer show

oder

composer show | grep sonata

um Versionen bestimmter Pakete wie Sonata usw. zu erhalten.

Benutzer-Avatar
cezar

Wenn Sie Ihre Symfony 2-Version dynamisch in Seiten anzeigen möchten, beispielsweise in der Fußzeile, können Sie dies auf diese Weise tun.

Erstellen Sie einen Dienst:

<?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;
}
}

Registrieren Sie sich in service.yml

 dut.twig.symfony_version_extension:
    class: Project\Bundle\DutBundle\Twig\SymfonyVersionExtension
    tags:
        - { name: twig.extension }
    #arguments: []

Und Sie können es überall anrufen. Wickeln Sie es in Controller in JSON oder in die Beispielfußzeile von Seiten ein

 <p> Built With Symfony {{ symfony_version() }} Version MIT License</p>

Jedes Mal, wenn Sie jetzt das Composer-Update ausführen, um Ihren Anbieter zu aktualisieren, wird die Symfony-Version auch automatisch in Ihrem Template aktualisiert. Ich weiß, das ist übertrieben, aber so mache ich es in meinen Projekten und es funktioniert.

Wir können die Symfony-Version mit finden Kernel.php Datei, aber das Problem ist, dass sich der Speicherort von Kernal von Version zu Version ändert (bessere Dateisuche in Ihrem Projektverzeichnis)

in Symfony 3.0: my_project\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\Kernel.php

Überprüfen Sie die Controller-/PHP-Datei

$symfony_version = \Symfony\Component\HttpKernel\Kernel::VERSION;
echo $symfony_version; // this will return version; **o/p:3.0.4-DEV**

1359960cookie-checkWoher weiß ich, welche Version von Symfony ich habe?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy