🐘

iPhone/iPad アプリの iSH Shell に PHP をインストールして外でいつでも PHP を触れるようにする

2023/12/25に公開

こんにちわ!@m3m0r7 です。
PHP Advent Calendar 2023 最終日は,みなさんのお手元で,どこでもいつでも大好きな PHP を触れるようにするための記事で締めくくらせていただければと思います。

iSH Shell って?

iSH Shell は iOS 向けアプリとして提供されているシェルです。

普段我々が触っているターミナルのような感覚で操作ができます。

この iSH Shell には最低限のソフトウェアしか入っていないのですが,ここに PHP を入れて行こうと思います。

iPhone 15 Pro と iPad Pro 第 2 世代でテストしています。

PHP をインストールする

この記事執筆時点での最新版の iSH はデフォルトでパッケージマネージャーの apk を使用できます。

$ apk upgrade && apk update && apk add php

とすると簡単に PHP をインストールできます。

$ php -v

できますが,PHP のバージョンは以下のスクショの通り PHP 7 です…。

PHP を野良ビルドする

せっかく PHP 8.3 がリリースされたので,PHP 8.3 を使いたいですよね。そんなあなたの願い叶えます。PHP 8.3 を野良ビルド,つまりソースコードからビルドすればいいのです。

以下の手順でソースコードを取得します。

$ wget https://www.php.net/distributions/php-8.3.0.tar.gz
$ tar zxvf php-8.3.0.tar.gz

必要なパッケージを入れておきます。

$ apk add make gcc g++ pkgconfig libxml2-dev sqlite-dev

次の手順でビルド前の事前準備をします。

$ cd php-8.3.0
$ ./configure

ちなみに ./configure めちゃめちゃ遅いです。気長に待ちつつ,うまくいくと以下のように表示されます。

最後にビルドします。

$ make -j4
$ make install

./configure と同様で,make もめちゃくちゃ遅いので気長に待ちましょう。

ビルドがうまくいくと以下のように表示されます。[1]

make install が実行されると以下のようにインストールが完了します。

$PATH の都合上 make install 先の /usr/local/bin よりも /bin/usr/bin が先に探索されてしまい,このままだと php -v しても先ほどの apk で入れた PHP のバージョンが表示されることになります。

そのため古い PHP を以下のように削除します。

$ apk del php

その後,改めて php -v を実行すると PHP 8.3 がインストールされていることを確認できます。[2]

Hello World! も出力してみましょう。

ちゃんと Hello World! が出力されましたね。これで,あなたはいつでもどこでも大好きな PHP と一緒です。電車の中でも,お布団の中でも,夢の国でも。

脚注
  1. 途中で改行などがあるのは,誤って一番上にスクロールしてしまいカーソルを元の位置に戻したためです。 ↩︎

  2. 定期的に clear コマンドを実行していたり,誤って実行したコマンドを隠蔽するために改行しており,画面がこんな事になっています。 ↩︎

Discussion