Im Dezember 2015 bereits erschien die neueste Version von PHP 7.0.1. Auch wenn in produktiven Umgebungen zumeist PHP 5.5 oder 5.6, ja teilweise auch noch 5.4 und 5.3, im Einsatz sind, sollte man als Entwickler spätestens jetzt damit beginnen seine Programmierungen auch PHP7-kompatibel umzusetzen. Dazu ist es dann hilfreich einen Rechner oder Server mit installiertem PHP7 nutzen zu können.
Mit dem PPA von Ondřej Surý ist dies mit wenig Aufwand möglich, so habe ich auf meinem lokalen Entwicklungs-Server PHP 5.6 und auf meinem Entwicklungs-PC jetzt PHP 7 jeweils unter Ubuntu laufen.
PHP 7 installieren
Zu Beginn kann man mit folgenden Schritten auf der Kommandozeile seiner Ubuntu-Installation PHP 7 installieren
sudo apt-get install python-software-properties
Falls noch nicht installiert wird die benötigte Abhängigkeit von apt für die Depotverwaltung installiert.
sudo add-apt-repository ppa:ondrej/php
Fügt das PPA zu den eingetragenen Repositories hinzu.
sudo apt-get update
Nicht vergessen nun die Paketlisten neu einzulesen und dann mit
sudo apt-get install -y php7.0
PHP 7 installieren.
Zu beachten ist, falls Sie phpMyAdmin über die Paketverwaltung installiert haben, das dieses nun deinstalliert wird. Grund dafür ist ein fehlendes zu PHP 7 kompatibles Paket. Möchten Sie phpMyAdmin weiterhin auch unter PHP 7 nutzen, so sollten Sie bei diesem Schritt die Datenbank des Scripts nicht löschen (lassen). So können Sie das Tool direkt von der Webseite laden und installieren. Mit
php -v
bekommen Sie die installierte Version dann angezeigt.
PHP 7.0.2-4+deb.sury.org~trusty+1 (cli) ( NTS )<br />Copyright (c) 1997-2015 The PHP Group<br />Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies<br /> with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
Installation von PHP-Modulen
Lassen Sie sich mit dem Befehl
sudo apt-cache search php7-*
die installierbaren PHP-Erweiterungen anzeigen
php7.0-common - Common files for packages built from the PHP source libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module) php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary) php7.0-cli - command-line interpreter for the PHP scripting language php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary) php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary) libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library) php7.0-dev - Files for PHP7.0 module development php7.0-dbg - Debug symbols for PHP7.0 php7.0-curl - CURL module for PHP php7.0-enchant - Enchant module for PHP php7.0-gd - GD module for PHP php7.0-gmp - GMP module for PHP php7.0-imap - IMAP module for PHP php7.0-interbase - Interbase module for PHP php7.0-intl - Internationalisation module for PHP php7.0-ldap - LDAP module for PHP php7.0-mcrypt - libmcrypt module for PHP php7.0-readline - readline module for PHP php7.0-odbc - ODBC module for PHP php7.0-pgsql - PostgreSQL module for PHP php7.0-pspell - pspell module for PHP php7.0-recode - recode module for PHP php7.0-snmp - SNMP module for PHP php7.0-tidy - tidy module for PHP php7.0-xmlrpc - XMLRPC-EPI module for PHP php7.0-xsl - XSL module for PHP php7.0 - server-side, HTML-embedded scripting language (metapackage) php7.0-json - JSON module for PHP php-all-dev - package depending on all supported PHP development packages php7.0-sybase - Sybase module for PHP php7.0-modules-source - PHP 7.0 modules source package php7.0-sqlite3 - SQLite3 module for PHP php7.0-mysql - MySQL module for PHP php7.0-opcache - Zend OpCache module for PHP php7.0-bz2 - bzip2 module for PHP
und installieren Sie die von Ihnen davon für Ihre Anwendungen benötigten Erweiterungen gleich mit
sudo apt-get install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi
Viel Spaß nun mit PHP 7!
Ich freue mich auf Ihr Feedback.
Hallo,
ein
sudo apt-get install php7.0-fpm
sollte helfen. Falls Pakete, aus welchen Gründen auch immer, nicht installiert werden können hilft zumeist ein expliziter Aufruf zur Installation des Paketes.
Gruß Ortwin
Hallo Ortwin,
schöner Artikel. Hat auch Anfangs alles geklappt, nur wird die Installation nicht ausgeführt. Hast du eine Idee?
Einige Pakete konnten nicht installiert werden. Das kann bedeuten, dass
Sie eine unmögliche Situation angefordert haben oder, wenn Sie die
Unstable-Distribution verwenden, dass einige erforderliche Pakete noch
nicht erstellt wurden oder Incoming noch nicht verlassen haben.
Die folgenden Informationen helfen Ihnen vielleicht, die Situation zu lösen:
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
php7.0 : Hängt ab von: php7.0-fpm soll aber nicht installiert werden oder
libapache2-mod-php7.0 soll aber nicht installiert werden oder
php7.0-cgi soll aber nicht installiert werden
E: Probleme können nicht korrigiert werden, Sie haben zurückgehaltene defekte Pakete.