Jak nainstalovat PHP 7?

108

PHP 7 vyšel včera a chtěl bych to zkusit.

  

PHP 7.0.0 je dodáván s novou verzí Zend Engine, četnými vylepšeními a novými funkcemi, jako je

     
  • Zlepšený výkon: PHP 7 je až dvakrát rychlejší než PHP 5.6
  •   
  • Výrazně snížené využití paměti
  •   
  • Abstraktní strom syntaxe
  •   
  • Konzistentní 64bitová podpora
  •   
  • Vylepšená hierarchie výjimek
  •   
  • Mnoho fatálních chyb převedených do Výjimků
  •   
  • Zabezpečte generátor náhodných čísel
  •   
  • Odstraněny staré a nepodporované SAPI a rozšíření
  •   
  • Nulový operátor spojování (??)
  •   
  • Deklarace typu Return a Scalar
  •   
  • Anonymní třídy
  •   
  • Nulové náklady
  •   

php.net

Je možné jej nainstalovat do aktuální verze Ubuntu?

Existují nějaké aktuální omezení nebo známé problémy s kompatibilitou?

    
dané hg8 04.12.2015 15:13

9 odpovědí

172

Můžete provést následující:

sudo apt-get install python-software-properties software-properties-common
sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
sudo apt-get update

Volitelně vyčistěte PHP 5:

sudo apt-get remove php5-common -y

Nebo přímo jej vyčistěte včetně konfiguračních souborů:

sudo apt-get purge php5-common -y

Nakonec nainstalujte PHP 7:

sudo apt-get install php7.0 php7.0-fpm php7.0-mysql -y

Vyčistěte případně nepotřebné balíčky:

sudo apt-get --purge autoremove -y

Alternativně můžete nainstalovat PHP 7.0 ze zdrojů pomocí tohoto skriptu skriptu nebo podle pokynů blog .

Úprava:

PHP5 je nyní nahrazen s PHP7 jako výchozí PHP v Ubuntu 16.4, takže k instalaci PHP7 na Ubuntu 16.04:

sudo apt-get install php7.0 

Nebo

sudo apt-get install php
    
odpověděl Tshilidzi Mudau 04.12.2015 15:52
20

Máte dvě možnosti:

  • Počkejte, až bude k dispozici nové vydání Ubuntu, které obsahuje PHP7

    Ubuntu nebude vydávat velké verze nové verze pro většinu softwaru do stávajících verzí Ubuntu; Chcete-li získat novou verzi nové verze, budete muset počkat na novou verzi Ubuntu.

  • Nainstalujte verzi jiného výrobce, například z PPA

    PPA nejsou vázány časovými rozvrhy a pravidly Ubuntu, takže mají možnost měnit verze častěji, mimo jiné. PPA uvedená v odpovědi Tshilidzi Mudau je populární způsob, jak zůstat s PHP časově nejdůležitější.

    sudo add-apt-repository ppa:ondrej/php
    

    PPA neobsahují stejnou oficiální podporu Ubuntu jako verze dodávané firmou Ubuntu a vzhledem k rozdílným rozvrhům a zásadám mohou mít odlišnou kvalitu nebo bezpečnostní standard. V tomto případě je vývojář, který zpřístupňuje tento PPA, dobře známý komunitě.

odpověděl thomasrutter 06.12.2015 14:00
17

Zde je můj seznam příkazů k úplné aktualizaci PHP se svými závislostmi, včetně phpMyAdmin (plný LAMP stack):

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php-7.0
sudo apt-get update
sudo apt-get purge php5-fpm
sudo apt-get install php7.0-cli php7.0-common libapache2-mod-php7.0 php7.0 php7.0-mysql php7.0-fpm php7.0-curl php7.0-gd php7.0-bz2

Nyní máte PHP7. Pojďme pro phpMyAdmin: (začněte zde, pokud jste již nainstalovali PHP7)

cd /var/www/html/
sudo wget https://files.phpmyadmin.net/phpMyAdmin/4.5.3.1/phpMyAdmin-4.5.3.1-all-languages.zip
sudo unzip phpMyAdmin-4.5.3.1-all-languages.zip
sudo mv phpMyAdmin-4.5.3.1-all-languages/ phpmyadmin/
sudo mkdir -m 777 phpmyadmin/config/
sudo /etc/init.d/apache2 restart
    
odpověděl Jarek Jakubowski 25.01.2016 12:22
10

Pro Ubuntu 16.04 je PHP7 nyní výchozí oficiální verzí.

sudo apt install php

Zde je šikovný průvodce pro nastavení zásobníku LAMP na 16.04 .

    
odpověděl Jeff Puckett 13.07.2016 01:13
6

Výše ​​uvedený proces nefungoval pro můj server Ubuntu 15.10, takže jsem si myslel, že bych sdílel, co fungovalo v případě, že to ostatní považují za užitečné.

Nejprve jsem musel odstranit některé klíčové moduly PHP 5:

sudo apt-get -y purge php5 libapache2-mod-php5 php5 php5-cli php5-common php5-curl php5-gd php5-imap php5-intl php5-json php5-mcrypt php5-mysql php5-pspell php5-readline php5-sqlite

Odstraňte několik dalších věcí, které zůstaly za sebou:

sudo apt-get autoremove

Potom nainstalujte PHP 7.0:

sudo apt-get install php7.0

Poté, co byl PHPMyAdmin odstraněn, Apache2 by se nespustil, takže musel odebrat konfigurační soubor (mohl bych ho místo toho přesunout):

sudo rm /etc/apache2/conf-enabled/phpmyadmin.conf

Poté jsem musel restartovat Apache2:

sudo service apache2 restart

PHP 7.0 běžel (potvrzenoPHPINFO();)

Nicméně jsem zjistil, že jediný způsob, jak se PHPMyAdmin pracovat, je instalovat / upgradovat ručně, protože jinak nejnovější verze dostupná ve zdrojích nepodporuje PHP 7.

** EDIT: Nyní jsem našel způsob, jak získat PHPMyAdmin aktualizovanou na kompatibilní verzi, aniž byste museli clonovat z GIT nebo ručně kompilovat ze zdrojů, takže přidávám toto:

Nejprve přidejte toto úložiště, aktualizujte seznam zdrojů a upgradu (Poznámka: pokud byla při upgradu na PHP7 odstraněna, budete muset nainstalovat spíše než aktualizovat):

sudo add-apt-repository ppa:nijel/phpmyadmin
sudo apt-get update
sudo apt-get dist-upgrade

Během instalace (na mém serveru) však musel spustit skript pro upgrade databázeupgrade_column_info_4_3_0+.sql, ale to se nezdařilo s následující chybou:

mysql said: ERROR 1060 (42S21) at line 28: Duplicate column name 'input_transformation'

Zvolil jsem chybu ignorovat a dokončil upgrade. Po instalaci jsem otevřel skript upgradu .sql na/usr/share/phpmyadmin/sql/upgrade_column_info_4_3_0+.sql

Spustil jsem skript, který ručně odstranil dvě řádky, které se pokoušejí vytvořit 2 sloupce, které již existují (kód, který chcete odstranit):

ALTER TABLE 'pma__column_info'
ADD 'input_transformation' varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
ADD 'input_transformation_options' varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';

Nakonec jsem musel upravit konfigurační soubor na/etc/phpmyadmin/config.inc.php a přidat následující dva řádky:

$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';

Po úspěšném aktualizování tohoto PHPMyAdmin a rozšířených funkcích. Doufám, že to pomůže ostatním.

    
odpověděl Robin Wilson 23.12.2015 19:08
4

V době této odpovědi (únor 2017) na Ubuntu 16.04 LTS je nyní možné nainstalovat php 7.0. * pomocí jednoduchého příkazu:

apt-get install php

Není třeba přidávat žádné repozitáře třetích stran.

    
odpověděl Leo Galleguillos 02.02.2017 03:07
3

Myslím, žeppa byl přidán v 16.04 LTS.

  1. Prostě jednoduše proveďtesudo apt-get install php7.0 a to je.
  2. Zkontrolujte, zda je nainstalována spuštěnímphp --version
  3. Také můžete vytvořit souborinfo.php v kořenovém adresáři Apache.
  4. To je v adresáři/var/www/html/
  5. Spustitsudo gedit /var/www/html/info.php
  6. Do souboru přidejte následující:<?php phpinfo(); ?>. Poznámka: soubor je prázdný soubor, protože jste jej vytvořili sami.
  7. Nyní restartujte apachesudo service apache2 restart
  8. Ve vašem webovém prohlížečihttp://localhost/info.php, který vám poskytne úplné informace o php.

Doufám, že to pomůže:)

    
odpověděl Collin 11.08.2016 10:35
2

Zhromaždil jsem několik různých zdrojů a vyřešil jsem mnoho problémů, abych plně navázal sestavení PHP 7 na Ubuntu 15.04 a 15.10. Ačkoli to není skript balíku Debianu, dělá nastavení Ubuntu závislostí a konfigurace. Zdroje naleznete zde >>.

Bude pravděpodobně nutné vybrat větev pro uvolnění přes příkaz master a znovu spustit skript.

    
odpověděl m1st0 20.01.2016 21:29
2

Vím, že to může být špatný nápad, ale takhle jsem dostal php7 pro práci s instalací Ubuntu Server 12.04.5 (i386):

sudo nano /etc/apt/sources.list

Na závěr přidejte následující:

deb http://us.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
deb http://archive.canonical.com/ubuntu trusty partner

Potom se aktualizujte, jak obvykle:

sudo apt-get update

Jakmile máte na svém serveru Apache nainstalován PHP 7, možná budete muset přesunout soubory do nového adresáře, abyste pracovali:

sudo mv /var/www/* /var/www/html/
    
odpověděl KimChoJapFan 19.01.2017 06:12