web-dev-qa-db-ja.com

PHP 7のインストール方法は?

PHP 7がリリースされました 昨日 試してみたいと思います。

PHP 7.0.0には、Zend Engineの新しいバージョン、多数の改善、次のような新機能が付属しています。

  • パフォーマンスの向上:PHP 7はPHP 5.6の最大2倍の速度です
  • メモリ使用量を大幅に削減
  • 抽象構文ツリー
  • 一貫した64ビットサポート
  • 例外階層の改善
  • 多くの致命的なエラーが例外に変換されました
  • 安全な乱数ジェネレーター
  • 古いサポートされていないSAPIと拡張機能を削除しました
  • Null合体演算子(??)
  • 戻り値とスカラー型の宣言
  • 匿名クラス
  • ゼロコストアサート

php.net


現在のUbuntuバージョンにインストールすることは可能ですか?

現在の制限または既知の互換性の問題はありますか?

116
hg8

次のことができます。

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

オプションでPHP 5をパージします:

Sudo apt-get remove php5-common -y

または、構成ファイルを含めて直接パージします。

Sudo apt-get purge php5-common -y

最後にPHP 7をインストールします:

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

必要に応じて、不要なパッケージを後でクリーンアップします。

Sudo apt-get --purge autoremove -y

または、このスクリプト script またはこの blog の指示に従って、ソースからPHP 7.0をインストールできます。

編集:

PHP5が replaced になりました。Ubuntu16.4ではPHP7がデフォルトのPHPであるため、Ubuntu 16.04にPHP7をインストールします。

Sudo apt-get install php7.0 

または

Sudo apt-get install php
180
Tshilidzi Mudau

次の2つのオプションがあります。

  • PHP7を含む新しいUbuntuリリースがリリースされるまで待ちます

    Ubuntuは、既存のUbuntuバージョンへのほとんどのソフトウェアのメジャーな新しいバージョンリリースをリリースしません。メジャーな新しいバージョンのリリースを取得するには、Ubuntuの新しいバージョンがリリースされるまで待つ必要があります。

  • PPAなどからサードパーティバージョンをインストールする

    PPAはUbuntuのリリーススケジュールやポリシーに拘束されないため、特に頻繁にバージョンをより頻繁に変更できます。 Tshilidzi Mudauの回答で言及されたPPAは、PHPを最新の状態に保つための一般的な方法です。

    Sudo add-apt-repository ppa:ondrej/php
    

    PPAには、Ubuntuが提供するバージョンと同じ公式のUbuntuサポートが付属していません。また、スケジュールやポリシーが異なるため、品質やセキュリティの基準が異なる場合があります。この場合、このPPAを利用可能にする開発者は、ここでコミュニティに知られています。

21
thomasrutter

PhpMyAdmin(完全なLAMPスタック)を含む、依存関係でPHPを完全に更新するためのコマンドのリストを次に示します。

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

これでPHP7ができました。 phpMyAdminに行きましょう:(すでに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
18

Ubuntu 16.04では、PHP7がデフォルトの公式アップストリームバージョンになりました。

Sudo apt install php

16.04にLAMPスタックをセットアップするための便利なガイド です。

10
Jeff Puckett

上記のプロセスはUbuntu 15.10サーバーでは機能しなかったので、他の人が役立つと思った場合に機能する内容を共有すると思いました。

最初に、特定のキー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

次に、残されたいくつかの余分なものを削除します。

Sudo apt-get autoremove

次に、PHP 7.0をインストールします。

Sudo apt-get install php7.0

次に、PHPMyAdminが削除されたため、Apache2が起動しないため、構成ファイルを削除する必要がありました(代わりに移動できました)。

Sudo rm /etc/Apache2/conf-enabled/phpmyadmin.conf

次に、Apache2を再起動する必要がありました。

Sudo service Apache2 restart

PHP 7.0が実行されていました(PHPINFO();で確認済み)

ただし、PHPMyAdminを機能させる唯一の方法は、手動でインストール/アップグレードすることです。そうしないと、ソースで利用可能な最新バージョンはPHP 7をまだサポートしていません。

**編集:GITからクローンを作成したり、ソースから手動でコンパイルしたりすることなく、PHPMyAdminを互換バージョンに更新する方法を見つけたので、以下に追加します。

最初にこのリポジトリを追加し、ソースリストを更新してアップグレードします(NB:PHP7へのアップグレード中に削除された場合、アップグレードするのではなく、インストールする必要があります)。

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

ただし、(サーバー上で)インストール中にデータベースアップグレードスクリプトupgrade_column_info_4_3_0+.sqlを実行する必要がありましたが、これは次のエラーで失敗しました。

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

エラーを無視して、アップグレードを完了することにしました。インストール後、/usr/share/phpmyadmin/sql/upgrade_column_info_4_3_0+.sqlで.sqlアップグレードスクリプトを開きました

既に存在する2つの列を作成しようとして、問題のある2行を手動で削除するスクリプトを実行しました(削除するコード)。

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 '';

最後に、/etc/phpmyadmin/config.inc.phpで構成ファイルを編集し、次の2行を追加する必要がありました。

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

この後、PHPMyAdminが正常に更新され、拡張機能が有効になります。これが他の人に役立つことを願っています。

7
Robin Wilson

この回答(2017年2月)の時点で、Ubuntu 16.04 LTSで、単純なコマンドでphp 7.0。*をインストールできるようになりました。

apt-get install php

サードパーティのリポジトリを追加する必要はありません。

4

ppaは16.04 LTSで追加されたと思います。

  1. Sudo apt-get install php7.0を実行するだけです。
  2. php --versionを実行してインストールされたかどうかを確認します
  3. また、Apacheのドキュメントルートにinfo.phpファイルを作成できます。
  4. それは/var/www/html/ディレクトリにあります
  5. Sudo gedit /var/www/html/info.phpを実行します
  6. ファイルに次を追加します:<?php phpinfo(); ?>。注:ファイルは自分で作成したため、空のファイルです。
  7. 次に、Apache Sudo service Apache2 restartを再起動します
  8. Webブラウザーでhttp://localhost/info.phpを使用すると、phpに関する詳細情報が表示されます。

お役に立てれば :)

3
Collin

Ubuntu 15.04および15.10でPHP 7のビルドを完全にセットアップするために、いくつかの異なるリソースを収集し、多くの問題を解決しました。 Debianパッケージスクリプトではありませんが、Ubuntuの依存関係と構成をセットアップします。リソースは こちら にあります。

マスターだけでリリースブランチを選択し、スクリプトを再実行する必要がある場合があります。

2
m1st0

私はこれが悪い考えかもしれないことを知っていますが、これが私のUbuntu Server 12.04.5(i386)のインストールでphp7を動作させる方法です:

Sudo nano /etc/apt/sources.list

次に、最後に次を追加します。

 deb http://us.archive.ubuntu.com/ubuntu/トラスティメインユニバースユニバースマルチバース
 deb http://archive.canonical.com/ubuntuトラスティパートナー

次に、通常どおりに更新します。

須藤apt-getアップデート

ApacheサーバーにPHP 7をインストールしたら、動作させるためにファイルを新しいディレクトリに移動する必要があります。

Sudo mv/var/www/*/var/www/html /
2
KimChoJapFan