Ich kann nicht scheinen, einen Weg zu finden, um Versionen von PHP schnell zu wechseln. Gibt es etwas, das Ruby Version Manager für PHP ähnlich ist? Ich muss unter OS X zwischen 5.3 und 5.2 wechseln.RVM entspricht für PHP?
Antwort
Wenn Sie Apache laufen, kann ich vorschlagen, wie ich das gelöst habe. installieren verschiedene Versionen von PHP an verschiedenen Standorten und bereiten einige Apache-PHP-xyzconf Dateien wie
ScriptAlias /php/ "path/to/php-5.2.10/"
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
Action application/x-httpd-php "/php/php-cgi"
<Directory "/php/">
Order allow,deny
Allow from all
</Directory>
,
ScriptAlias /php/ "path/to/php-5.3.0/"
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
Action application/x-httpd-php "/php/php-cgi"
<Directory "/php/">
Order allow,deny
Allow from all
</Directory>
und so weiter, so dass Sie schnell den Namen enthalten Conf-Datei ändern und Server neu starten. Oder wie ich, machen mehr virtuellen Hosts die gleiche Dokument Wurzel, aber mit verschiedenen Versionen von PHP enthalten:
<VirtualHost *:80>
DocumentRoot "C:/www/localhost"
ServerName local.php-5.2.10
Include conf/php-5.2.10.conf
<Directory "C:/www/localhost">
Allow from All
</Directory>
</VirtualHost>
Für PHP-Alternativen zu RVM und rbenv haben Sie phpbrew, phpenv und php-version. Bitte sei dir bewusst, dass ich der Autor der PHP-Version bin, also bevorzuge ich es natürlich, wie ich es geschrieben habe, um mein eigenes Juckreiz zu kratzen (ich wollte etwas Minimales mit Befehlsvervollständigung); phpenv ist aber auch ziemlich gut. Du würdest es gut machen, beides zu benutzen.
Unter OS X können Sie einen PHP-Versionsmanager mit Homebrew installieren.
zuerst die PHP Formeln für Homebrew hinzufügen:
% brew tap homebrew/homebrew-php
Dann die Formeln aus homebrew-php installiert verwenden, können Sie installieren entweder mit:
% brew install php-version
oder
% brew install phpenv
Die php-versionREADME.md listet ein paar mehr alternatives auf, so dass Sie vielleicht einen Blick darauf werfen möchten.
BTW, würde ich php-version
mehr mit chruby ausgerichtet sein, in dem es versucht, eine Sache gut zu machen.
Wird einer von diesen mit php-fpm arbeiten? – CMCDragonkai
In Bezug auf php-fpm; Ja, Sie sollten für jede PHP-Version, die Sie kompilieren, eine php-fpm-Binärdatei erhalten. Wenn Sie 'php-version' oder' phpenv' verwenden, um die Versionen zu wechseln, erhalten Sie das korrekte 'php-fpm'. Alles, was sie tun, ist, die Umgebungsvariablen zu wechseln, einschließlich '$ PATH' und' $ MANPATH'. –
Dies ist sehr hilfreich für automatisierte Tests. Vielen Dank! – sstur
Wenn Sie nicht php-cgi verwenden und verschiedene Versionen von PHP installieren zu verschiedenen Orten
Finden andere Version libphp5.so, und kopieren Sie in den anderen Ort
Wenn Verwendung php5. 3.11 oder php5.4.11
ln -s php5.3.11 php || ln -s php5.4.11
Depoly Apache httpd.conf
LoadModule php5_module YOUR_PHP_PATH/php/libphp5.so
Neustart Apache
sudo apachectl restart
Es ist ein großes Programm, dies zu tun, phpbrew. Ich benutze es aktiv und kann es sehr empfehlen.
Hier ist meine Lösung (pvers). Ein One-File-Skript vollständig in bash geschrieben. Wenn Sie nach einem Lite und einfach zu installieren php Versionsmanager mit minimalen Abhängigkeiten suchen - versuchen Sie es;)
Es scheint nicht zu beeinflussen Befehlszeile im Unterschied zu rvm – Mailo