PHP 5.4 ohne Risiko testen

Viele PHP-User möchten zurzeit evtl. die neue, gerade als BETA zur Verfügung gestellte neue Version 5.4 testen. Doch wie stellt man das möglichst unkompliziert an, ohne eine bestehende PHP-Installation (z.B. lokal) kaputt zu machen oder, aufwendig eine eigene VM dafür zu installieren?

Zunächst lädt man sich eines der ZIP-Files herunter unter: http://downloads.php.net/stas/php-5.4.0beta1.tar.gz
Dann muss das ganze entpackt, konfiguriert und kompiliert werden. Nachfolgend die Linux-Befehle, die das der Reihe nach erledigen:

wget http://downloads.php.net/stas/php-5.4.0beta1.tar.gz
tar xzvf php-5.4.0beta1.tar.gz
cd php-5.4.0beta1
./configure --with-readline
make test

Während des ./configure-Vorgangs sind bei mir zwei Probleme unter Ubuntu aufgetreten:

  1. Das Paket libxml2-dev hat gefehlt.
  2. Das Paket libreadline-dev war nicht vorhanden.

Beide Probleme konnte ich mich einem einfachen apt-get install lösen:

sudo apt-get install libxml2-dev
sudo apt-get install libreadline-dev

Bei anderen Problemen, liefert der nachfolgende Link ggfs. die richtige Hilfestellung: http://www.robo47.net/text/6-PHP-Configure-und-Compile-Fehler#libxml

Nach dem ./configure steht das Kompilieren mit „make test“ an. Normalerweise käme nun noch der Schritt „make install“. Das habe ich aber bewusst weggelassen. Wer nur ein wenig herumtesten möchte benötigt das nicht, sondern macht sich damit ggfs. eher seine bestehende Installation kaputt. Außerdem kann man das kompilierte PHP 5.4 nun gut testen, indem man den interactive-Mode benutzt (Hierfür war das „–with-readline“ beim ./configure nötig). Wer mehr über diesen Modus, den es bereits seit PHP 5.1 gibt, erfahren möchte, ist hier richtig: http://php.net/manual/en/features.commandline.interactive.php

Die PHP Commandline-Binary findet sich nun im Verzeichnis sapi/cli/php. Wer nun einfach ein wenig herumtesten möchte, kann php mit dem Parameter -a in den interactive mode schalten:

$ ./php -a
Interactive mode enabled

php > echo PHP_VERSION . "\n";
5.4.0beta1
php >

Im Vergleich zu früheren Versionen bricht der interactive mode ab PHP 5.4 nicht mehr ab, wenn ein FATAL ERROR auftritt. Gerade wenn man testen möchte, kann einem das in älteren Versionen ziemlich auf den Geist gehen. Na dann viel Spaß beim Testen!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *