Ergebnis 1 bis 11 von 11
  1. #1
    Kunde
    Registriert seit
    05.06.2008
    Beiträge
    4

    PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Hallo,

    auf meinem ManagedServer läuft ein eine Seite basierend auf Symfony 2.8. Dort habe ich per Composer die PHPUnit Bridge installiert und möchte diese nun nutzen. Dies geschieht über ein Shell Script:

    Code:
    $ ./vendor/bin/simple-phpunit -c app src/AppSyncBundle/
    X-Powered-By: PHP/4.4.9
    Content-type: text/html
    
    <br />
    <b>Parse error</b>:  syntax error, unexpected T_FUNCTION in <b>/kunden/<kundennummer>/pfath/zum/projekt/vendor/symfony/phpunit-bridge/bin/simple-phpunit</b> on line <b>18</b><br />
    Der Parse error wird vermutlich durch die viel zu alten PHP Version 4.4.9 verursacht. Die PHPUnit Bridge benötigt PHP 5.3.3. aufwärts.

    In der ~/.bashrc habe ich einen Alias erstellt, damit auf der Shell PHP 7.0.24 verwendet wird:

    Code:
    # .bashrc
    ...
    alias php='php7 -c /etc/php.ini/7/100170/php.ini'
    Das funktioniert prima, hat aber scheinbar keinen Einfluss auf die PHP Version bei der Ausführung eines Shell Scriptes. Wie ändere ich das?

    Ich vermute ich könnte die PHP Version in dem Script irgendwie manuell explizit angeben. Aber das Script ist ja nicht von mir erstellt sondern per Composer installiert. Beim nächsten Update wäre meine Änderung also wieder futsch.

    Daher die Frage: Wie ändere ich generell die PHP Version die bei der Ausführung von Shell Scripten verwendet wird?

  2. #2
    Forenexperte Avatar von [headcrash]
    Registriert seit
    28.02.2006
    Beiträge
    2.523

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    für Shellskripte mußt Du die passende CLI-Version nutzen, die liegen in /usr/local/bin/

  3. #3
    Kunde
    Registriert seit
    05.06.2008
    Beiträge
    4

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Vielen Dank! Wie mache ich das?

    Muss in der .bashrc Datei auf eine andere PHP Version verwiesen werden? Auch wenn ich den alias dort ändere wird dort bei der Ausführung des Scriptes derselbe Fehler mit derselben PHP Version 4.4.9 angezeigt:

    Code:
    alias php='php7.0.24-cli -c /etc/php.ini/7/100170/php.ini'
    Was sich ändert ist die Ausgabe der PHP Version in der Shell:

    Code:
    // Vorher
    $ php -v
    PHP 7.0.24 (cgi-fcgi) (built: Sep 30 2017 08:36:24)
    
    // Nachher
    $ php -v
    PHP 7.0.24 (cli) (built: Sep 30 2017 08:39:38) ( NTS )
    Das ändern der Version hat also geklappt, es hat nur eben leider keine Auswirkung auf die Ausführung des Scriptes...
    Geändert von Priot (07.06.2018 um 15:36 Uhr)

  4. #4
    Forenexperte Avatar von [headcrash]
    Registriert seit
    28.02.2006
    Beiträge
    2.523

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    alias php7cli='/usr/local/bin/php7.0.6-cli -c /etc/php.ini' z.B.

  5. #5
    Kunde
    Registriert seit
    05.06.2008
    Beiträge
    4

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Auch nach dem Hinzufügen der folgenden Zeile zur .bashrc und anschließendem Refresh leider keine Änderung:

    Code:
    alias php7cli='php7.0.24-cli -c /etc/php.ini/7/100170/php.ini'
    Das Script wird nach wie vor mit PHP 4.4.9 ausgeführt...

  6. #6
    Forenexperte Avatar von masterframe
    Registriert seit
    16.08.2001
    Beiträge
    8.424

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Alle Postings erfolgen freiwillig und nach bestem Gewissen. Haftung ausgeschlossen. Keine Rechtsberatung. Beschwerden bitte über unser Kontaktformular. WHOAMI

  7. #7
    Kunde
    Registriert seit
    05.06.2008
    Beiträge
    4

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Datei ./profile erstellt und alias eingefügt:

    Code:
    alias php7cli='php7.0.24-cli -c /etc/php.ini/7/100170/php.ini'
    Refresh
    Keine Änderung...

  8. #8
    Forenexperte Avatar von masterframe
    Registriert seit
    16.08.2001
    Beiträge
    8.424

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Zitat Zitat von Priot Beitrag anzeigen
    Datei ./profile erstellt und alias eingefügt:

    Code:
    alias php7cli='php7.0.24-cli -c /etc/php.ini/7/100170/php.ini'
    Refresh
    Keine Änderung...
    O.k.

    Vielleicht hat dF etwas am Setup geändert?

    Gruß,
    masterframe

    Alle Rechtschreibfehler hat die Autokorrektur verbrochen.
    Alle Postings erfolgen freiwillig und nach bestem Gewissen. Haftung ausgeschlossen. Keine Rechtsberatung. Beschwerden bitte über unser Kontaktformular. WHOAMI

  9. #9
    Reseller Avatar von Nico
    Registriert seit
    19.02.2002
    Beiträge
    829

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Moin,
    erstelle dir einen link auf die benötigte php-version.
    Ich mach das so:
    mkdir ~/bin/env-overrides
    ln -s /usr/local/bin/7.0.6-cli ~/bin/env-overrides/php

    nano ~/.bashrc
    # In der .bashrc den lokalen bin Ordner in den PATH übernehmen
    PATH=${HOME}/bin:${HOME}/bin/env-overrides:$PATH
    MfG

  10. #10
    Communityservice Avatar von Nils Dornblut
    Registriert seit
    15.10.2000
    Beiträge
    44.173

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Hallo Priot,

    hilft der Tipp von Nico oder sollen wir noch einmal schauen?

    Mit freundlichen Grüßen

    Nils Dornblut
    Communityservice
    __________________
    Blog - Facebook - Twitter
    Communitybetreiber: domainfactory GmbH
    Impressum / Pflichtangaben

  11. #11
    Kunde
    Registriert seit
    23.07.2008
    Beiträge
    2

    AW: PHP Version im ShellScript nur 4.4.9 - Wie ändern?

    Hallo,

    wir nutzen Symfony seit mehreren Jahren (von 2.3 bis 3.4) auf mehreren Managed Servern.
    Bewährt hat sich:

    Folgendes in die .bashrc:
    Code:
    export PATH=$HOME/bin:$PATH
    alias php5cli='php5-56LATEST-CLI -c $HOME/php_ini/php.512.5612.cli.ini'
    Je nach verwendeter PHP-Version natürlich anpassen. Ebenso den Pfad zu verwendeten php.ini

    Im Home-Verzeichnis gibt es einen zusätzlichen Ordner für diverse Binaries, so wie der Nico das auch betreibt.
    Dort haben wir die entsprechende php-Binary reingelinkt.

    Die Datei .profile enthält nichts Relevantes.

    Nach dem Editieren der .bashrc mit
    Code:
    source ~/.bashrc
    neu laden.

    Danach sollte alles wie gewünscht funktionieren.


    Getestet:
    Code:
    mkdir test
    cd test
    symfony new . 2.8
    composer require --dev "symfony/phpunit-bridge:*"
    phpunit liegt danach unter "bin/simple-phpunit"

    Sowohl
    Code:
    bin/simple-phpunit -c app src/AppBundle/
    als auch
    Code:
    php5cli bin/simple-phpunit -c app src/AppBundle/
    funktionieren einwandfrei.



    Für Symfony empfehle ich mindestens noch die Aufnahme von 1-2 weiteren Alias in die .bashrc:
    alias dev='php5-56LATEST-CLI -c $HOME/includes/php_ini/php.512.5612.cli.ini app/console --env=dev'
    alias prod='php5-56LATEST-CLI -c $HOME/includes/php_ini/php.512.5612.cli.ini app/console --env=prod'

    Für z. B. Cache löschen:
    Code:
    prod cache:clear
    Hier kann man für häufig benötigtes natürlich noch deutlich mehr machen um die Tipperei zu vereinfachen.
    Geändert von meta001 (12.06.2018 um 15:22 Uhr)

Ähnliche Themen

  1. PHP CLI Version auf PHP 7.1 ändern
    Von creativx im Forum Scriptsprachen / SQL / Anwendungen
    Antworten: 2
    Letzter Beitrag: 27.08.2017, 12:25
  2. php-Version ändern
    Von silkew im Forum Joomla
    Antworten: 3
    Letzter Beitrag: 25.05.2016, 21:06
  3. Wie die php-Version der ssh-Shell ändern?
    Von Marcus B. im Forum ManagedHosting
    Antworten: 3
    Letzter Beitrag: 31.07.2014, 12:49
  4. PHP Version ändern
    Von masterframe im Forum Scriptsprachen / SQL / Anwendungen
    Antworten: 5
    Letzter Beitrag: 06.02.2014, 18:49
  5. php Version ändern?
    Von Firestorm22 im Forum ManagedHosting
    Antworten: 2
    Letzter Beitrag: 21.02.2007, 19:20

Stichworte

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •