PHP7.4をインストールしてUbuntu18.04にローカル開発環境をセットアップする方法
著者は、 Write for DOnations プログラムの一環として、 Open Sourcing Mental IllnessLtdを選択して寄付を受け取りました。
序章
PHPは、動的でインタラクティブなWebページを作成することで知られる人気のあるサーバースクリプト言語です。 選択した言語で立ち上げて実行することは、プログラミングを学ぶための最初のステップです。
このチュートリアルでは、UbuntuにPHP 7.4をインストールし、コマンドラインからローカルプログラミング環境をセットアップする方法について説明します。 また、依存関係マネージャー Composer をインストールし、スクリプトを実行してインストールをテストします。
前提条件
このチュートリアルを完了するには、Ubuntu 18.04がインストールされ、そのマシンへの管理アクセスとインターネット接続を備えたローカルマシンまたは仮想マシンが必要です。 このオペレーティングシステムは、Ubuntuリリースページからダウンロードできます。
ステップ1—PHP7.4のセットアップ
コマンドラインでインストールとセットアップを完了します。これは、コンピューターと対話するための非グラフィカルな方法です。 つまり、ボタンをクリックする代わりに、テキストを入力し、テキストを介してコンピューターからフィードバックを受け取ることになります。
シェルまたはターミナルとも呼ばれるコマンドラインは、コンピューターで毎日実行するタスクの多くを変更および自動化するのに役立ち、ソフトウェア開発者にとって不可欠なツールです。 あなたがより強力なことをすることを可能にすることができる学ぶべき多くのターミナルコマンドがあります。 記事Linuxターミナルの紹介は、ターミナルの方向性をよりよく理解するのに役立ちます。
Ubuntuでは、画面の左上隅にあるUbuntuアイコンをクリックし、検索バーにterminal
と入力すると、ターミナルアプリケーションを見つけることができます。 ターミナルアプリケーションアイコンをクリックして開きます。 または、キーボードのCTRL
、ALT
、およびT
キーを同時に押すと、ターミナルアプリケーションが自動的に開きます。
デフォルトバージョンはコードを実行している場所によって変わる可能性があるため、デフォルトバージョンのPHPに依存することは避けてください。 また、使用しているアプリケーションに一致するように別のバージョンをインストールしたり、PHP8などの新しいバージョンにアップグレードしたりすることもできます。
次のコマンドを実行して、apt-get
自体を更新します。これにより、インストールするものの最新バージョンにアクセスできるようになります。
- sudo apt-get update
次に、software-properties-common
をインストールします。これにより、追加のソフトウェアソースの管理が追加されます。
- sudo apt -y install software-properties-common
-y
フラグは自動的にインストールに同意します。 それがないと、インストールごとにターミナルウィンドウにプロンプトが表示されます。
次に、リポジトリppa:ondrej/php
をインストールします。これにより、PHPのすべてのバージョンが提供されます。
- sudo add-apt-repository ppa:ondrej/php
最後に、apt-get
を再度更新して、パッケージマネージャーが新しくリストされたパッケージを表示できるようにします。
- sudo apt-get update
これで、次のコマンドを使用してPHP7.4をインストールする準備が整いました。
- sudo apt -y install php7.4
インストールされているバージョンを確認します。
- php -v
次のようなものが届きます。
OutputPHP 7.4.0beta4 (cli) (built: Aug 28 2019 11:41:49) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0-dev, Copyright (c) Zend Technologies
with Zend OPcache v7.4.0beta4, Copyright (c), by Zend Technologies
PHP自体に加えて、いくつかの追加のPHPモジュールをインストールすることをお勧めします。 このコマンドを使用して、追加のモジュールをインストールし、PACKAGE_NAME
をインストールするパッケージに置き換えることができます。
- sudo apt-get install php7.4-PACKAGE_NAME
一度に複数のパッケージをインストールすることもできます。 インストールする可能性が最も高い最も一般的なモジュールのいくつかの提案を次に示します。
- sudo apt-get install -y php7.4-cli php7.4-json php7.4-common php7.4-mysql php7.4-zip php7.4-gd php7.4-mbstring php7.4-curl php7.4-xml php7.4-bcmath
このコマンドは、次のモジュールをインストールします。
php7.4-cli
-コマンドインタープリター。シェルからのPHPスクリプトのテストや、一般的なシェルスクリプトタスクの実行に役立ちます。php7.4-json
-JSONデータを操作するためphp7.4-common
-PHPのドキュメント、例、および一般的なモジュールphp7.4-mysql
-MySQLデータベースを操作するためphp7.4-zip
-圧縮ファイルを操作するためphp7.4-gd
-画像の操作用php7.4-mbstring
-非ASCII文字列の管理に使用されますphp7.4-curl
-PHPでHTTPリクエストを作成できますphp7.4-xml
-XMLデータを操作するためphp7.4-bcmath
-精密フロートを操作するときに使用されます
Apacheに関連するPHP構成は、/etc/php/7.4/apache2/php.ini
に格納されます。 次のコマンドを使用して、ロードされているすべてのPHPモジュールを一覧表示できます。
- php -m
PHPをインストールし、実行しているバージョンを確認しました。 また、必要なPHPモジュールをインストールし、ロードしたモジュールを一覧表示することができました。
今すぐPHPの使用を開始できますが、さまざまなライブラリを使用してPHPアプリケーションをすばやく構築することをお勧めします。 PHP環境をテストする前に、まずプロジェクトの依存関係マネージャーを設定します。
ステップ2—依存関係管理用のComposerのセットアップ(オプション)
ライブラリは、すべてを自分で作成しなくても、一般的な問題を解決するのに役立つコードのコレクションです。 利用可能なライブラリは多数あるため、依存関係マネージャーを使用すると、PHPの作成に慣れてきたときに、複数のライブラリを管理するのに役立ちます。
Composer は、PHPでの依存関係管理のためのツールです。 プロジェクトが依存するライブラリを宣言し、これらのパッケージのインストールと更新を管理できます。
同様ですが、Composerはyum
またはapt
と同じ意味でのパッケージマネージャーではありません。 「パッケージ」またはライブラリを扱いますが、プロジェクトごとに管理し、ディレクトリにインストールします(例: プロジェクト内のvendor
)。 デフォルトでは、グローバルには何もインストールされません。 したがって、これは依存関係マネージャーです。 ただし、global
コマンドを使用して便利なグローバルプロジェクトをサポートします。
このアイデアは新しいものではなく、ComposerはNodeのnpm
とRubyのbundler
に強く影響を受けています。
仮定する:
- 複数のライブラリに依存するプロジェクトがあります。
- それらのライブラリのいくつかは他のライブラリに依存しています。
作曲:
- 依存するライブラリを宣言できます。
- どのバージョンのパッケージをインストールできるか、またインストールする必要があるかを調べ、プロジェクトにダウンロードしてインストールします。
- 1つのコマンドですべての依存関係を更新できます。
- 依存関係の宣言の詳細については、「基本的な使用法」の章を参照してください。
要するに、Composerをインストールする方法は2つあります。プロジェクトの一部としてローカルにインストールする方法と、システム全体の実行可能ファイルとしてグローバルにインストールする方法です。 いずれにせよ、ローカルインストールから始めます。
ローカルで
現在のディレクトリにComposerをすばやくインストールするには、ターミナルで次のスクリプトを実行します。
- php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
- php -r "if (hash_file('sha384', 'composer-setup.php') === '756890a4488ce9024fc62c56153228907f1545c228516cbf63f885e036d37e9a59d27d63f46af1d4d07ee0f76181c7d3') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
- php composer-setup.php
- php -r "unlink('composer-setup.php');"
このインストーラスクリプトは、いくつかのphp.ini
設定をチェックし、それらが正しく設定されていない場合は警告し、現在のディレクトリに最新のcomposer.phar
をダウンロードします。 4行は、順番に次のようになります。
- インストーラーを現在のディレクトリにダウンロードします
- インストーラーSHA-384を確認します。これは、ここでクロスチェックすることもできます
- インストーラーを実行します
- インストーラーを削除します
インストーラーはいくつかのPHP設定をチェックしてから、composer.phar
を作業ディレクトリにダウンロードします。 このファイルはComposerバイナリです。 これはPHAR(PHPアーカイブ)であり、コマンドラインなどで実行できるPHPのアーカイブ形式です。
Composerを実行するには、php composer.phar
を使用します。 例として、次のコマンドを実行して、インストールしたComposerのバージョンを確認します。
- php composer.phar --version
Composerをローカルで使用するには、composer.phar
ファイルをプロジェクトのルートディレクトリに配置する必要があります。 Composerをインストールする前に、プロジェクトディレクトリから開始できます。 インストール後にファイルを移動することもできます。 --install-dir
オプションを使用してComposerを特定のディレクトリにインストールし、さらに--filename
オプションを使用して名前を(再)変更することもできます。
Composerはプロジェクト全体で使用されるものであるため、次の部分に進み、Composerをグローバルに実行するように設定することをお勧めします。
グローバルに
ComposerPHARはどこにでも配置できます。 $PATH
の一部であるディレクトリに配置すると、グローバルにアクセスできます。 Ubuntu(および他のUnixシステム)で実行可能にして、PHPインタープリターを直接使用せずに呼び出すこともできます。
ローカルにインストールした後、次のコマンドを実行して、composer.phar
をパス内のディレクトリに移動します。
- sudo mv composer.phar /usr/local/bin/composer
ユーザー専用にインストールし、root権限を必要としない場合は、代わりに~/.local/bin
を使用できます。これは、一部のLinuxディストリビューションでデフォルトで使用できます。
- mv composer.phar ~/.local/bin/composer
ここでComposerを実行するには、php composer.phar
の代わりにcomposer
を使用します。 Composerのバージョンを確認するには、次のコマンドを実行します。
- composer --version
最後のステップとして、オプションでcomposer init
を使用してプロジェクトを初期化できます。 これにより、プロジェクトの依存関係を管理するcomposer.json
ファイルが作成されます。 プロジェクトを初期化すると、作成者やライセンスなどのプロジェクトの詳細を定義し、Composerの自動ロード機能を使用することもできます。 ここで依存関係を定義することも、後で追加することもできます。
次のコマンドを実行して、プロジェクトを初期化します。
- composer init
このコマンドを実行すると、セットアップウィザードが起動します。 ウィザードに入力した詳細は後で更新できるため、デフォルトのままにして、ENTER
を押すだけです。 依存関係をインストールする準備ができていない場合は、no
を選択できます。 各プロンプトで詳細を入力します。
OutputThis command will guide you through creating your composer.json config.
Package name (sammy/php_install): sammy/project1
Description []:
Author [Sammy <[email protected]>, n to skip]:
Minimum Stability []:
Package Type (e.g. library, project, metapackage, composer-plugin) []: project
License []:
Define your dependencies.
Would you like to define your dependencies (require) interactively [yes]? no
Would you like to define your dev dependencies (require-dev) interactively [yes]? no
{
"name": "sammy/project1",
"type": "project",
"authors": [
{
"name": "Sammy",
"email": "[email protected]"
}
],
"require": {}
}
Do you confirm generation [yes]? yes
生成を確認する前に、ウィザードが作成するcomposer.json
ファイルのサンプルが表示されます。 すべて良さそうな場合は、デフォルトのyes
を確認できます。 最初からやり直す必要がある場合は、no
を選択してください。
初めて依存関係を定義するときに、Composerはvendor
フォルダーを作成します。 すべての依存関係は、このvendor
フォルダーにインストールされます。 Composerは、composer.lock
ファイルも作成します。 このファイルは、プロジェクトで使用される各依存関係とサブ依存関係の正確なバージョンを指定します。 これにより、プログラムが実行されているすべてのマシンが、各パッケージのまったく同じバージョンを使用することが保証されます。
注: vendor
フォルダーは、バージョン管理システム(VCS)にコミットしないでください。 vendor
フォルダーには、他のベンダーからインストールしたパッケージのみが含まれます。 これらの個々のベンダーは、独自のバージョン管理システムで独自のコードを維持します。 自分が書いたコードだけを追跡する必要があります。 vendor
フォルダーをコミットする代わりに、composer.json
およびcomposer.lock
ファイルをコミットするだけで済みます。 特定のファイルを無視する方法について詳しくは、 Gitの使用方法:リファレンスガイドをご覧ください。
PHPがインストールされ、Composerを使用してプロジェクトの依存関係を管理する方法ができたので、環境をテストする準備が整いました。
ステップ3—PHP環境のテスト
システムがPHP用に正しく構成されていることをテストするために、基本的なPHPスクリプトを作成して実行できます。 このスクリプトをhello.php
と呼びます。
- sudo nano hello.php
これにより、空のファイルが開きます。 有効なPHPコードである次のテキストをファイル内に配置します。
<?php
echo 'Hello World!';
?>
テキストを追加したら、ファイルを保存して閉じます。 これを行うには、CTRL
キーを押しながらx
キーを押します。 次に、y
を選択し、ENTER
を押します。
これで、PHPがスクリプトを正しく処理することを確認するためにテストできます。 php
と入力して、ファイルを処理するようにPHPに指示し、その後にファイルの名前を続けます。
- php hello.php
PHPが適切に処理されている場合は、引用符で囲まれた文字のみが表示されます。
OutputHello World!
PHPはスクリプトを正常に処理しました。つまり、PHP環境が正常にインストールされ、プログラミングの旅を続ける準備ができています。
結論
この時点で、ローカルのUbuntuマシンにPHP 7.4プログラミング環境がセットアップされ、コーディングプロジェクトを開始できます。
コーディングを開始する前に、統合開発環境(IDE)をセットアップすることをお勧めします。 選択できるIDEは多数ありますが、 VS Code は、グラフィカルインターフェイス、構文の強調表示、デバッグなどの多くの強力な機能を提供するため、人気のある選択肢です。
ローカルマシンでソフトウェア開発の準備ができたら、 PHPで文字列を操作する方法に従って、PHPでのコーディングについてさらに学習することができます。