Christian Renner (ch12r)

Multiple PHP Versionen unter Mac OS X mit Homebrew

Es wird Zeit mal ein bisschen mit Yii 2 (yiisoft/yii2) herumzuspielen. Zwar ist die Neuauflage des Frameworks noch nicht stable, aber mal so ein bisschen schauen, was einen erwartet und wie es sich anfühlt: Kann man mal machen, dachte ich.

Problem: Aktuelle PHP Version der lokalen Entwicklungsumgebung noch auf 5.3. Mindestvoraussetzung ist aber 5.4. Da 5.4 voll kompatibel zu 5.5 ist, und ich die Version 5.3 noch für den Support älterer Anwendungen behalten möchte, stellte sich die Frage, wie ich am komfortabelsten ein Setup erhalten kann, mit dem ich für beide Versionen entwickeln kann.

Installation von PHP 5.5

Die Installation der neuen PHP Version an sich ist mittels Homebrew (josegonzalez/homebrew-php), wie gewohnt, ein Einzeiler und verläuft problemlos.
Das eigentliche Problem entsteht beim Linken (brew link) der Binaries und Bibliotheken, da die Links bereits existieren.

Verlinkungen per Skript umschalten

Bei der Suche nach einer Lösung stoß ich auf die Anleitung unter https://coderwall.com/p/nm_wna, wo das Umschalten per Skript vollzogen wird. Da in meinem Fall der Wechsel zwischen den Versionen nur in Ausnahmefällen notwendig sein wird, scheint mir diese Lösung absolut praktikabel. Da das Umschaltskript noch für 5.3 & 5.4 geschrieben ist, habe ich das Skript von @conradkleinespel geforkt. Der Code ist (als mein erstes Github-Projekt :)) unter ch12r/switch_php_version_brew_osx zu finden.

Ich habe mir das Skript ins Homeverzeichnis gelegt und kann nun mittels dem Kommando

~/sphp

die Version des PHP-Moduls für den Apachen auf PHP 5.5 umschalten. Beim erneuten Aufrufen wird wieder auf PHP 5.3 zurückgeschaltet.

Wer ein besseres Setup am Start hat, darf dieses gerne in den Kommentaren anpreisen. Bin gespannt. Ich werde mich nun erstmal direkt an das Ausprobieren von Yii 2 machen.

This entry was posted in Development, Environment and tagged , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

Post a Comment

Your email is never published nor shared.

You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="">