-Visual Studio Code-IBM iとPHP

 

著: Liam Barry Allan (2021年7月27日)

訳: 玉田 優 (2021年8月09日)

 

はじめに

これまでの「Code for IBM i」に関する全ての投稿はRPG、CL、COBOL等を記述する際に、「Code for IBM i」をどのように使用するかについてでした。

では、他の言語ではどうでしょうか?

言うまでもなく、PHPはIBM iにおいて非常に人気のある言語の1つです。

Calvinは少し前に、RDiを使ってサーバー上でPHPコードを書くことが可能であるについて投稿しました。

これは素晴らしいことです。

私(※Liam Barry Allan氏)は今回の投稿を活用することで、さらに上を目指せるのではないかと思っています。

 

今回の投稿を読み続ける前に、あなたは「Code for IBM i」のインストール、及び開発先のシステムへの接続のため、以前の投稿を読む必要があります。

 

PHP on IBM i

ご存じかもしれませんが、人々はIBM i上でPHPを実行しています。

これは素晴らしいことです。

悲しい部分としては、変更内容をIBM iに再アップロードする前に、編集時PCとの間でファイルを転送するためにFTPを使う羽目になった人がいることです。

もっと簡単な方法があるのに、これは残念なことです。

ある人はエディターでPHPを書き、ドライブレター(例:Q:)のネットワーク共有上でIBM iに接続しています。

他の環境では、Notepad++、PHPStorm、Eclipseを使っている人を見たことがあります。

 

PHPを記述する上で評判の良いIDEリストに、拡張機能である「Code for IBM i」と共にVisual Studio Code(以下、VSCode)を加えましょう。

 

PHP開発者にとってVSCodeを使うことによるメリット

PHP開発者向けのVSCodeの機能として、PHP構文のカラーリング、コードスニペットの提案、拡張機能のカスタム、そしてデバッグ(PHPデバッグガイドのVSCode項目参照)等があります。

IFS上で編集を容易にするために、「Code for IBM i」をインストールし、IFS BROWSERを使用します。

 

IFS BROWSERと作業ディレクトリ

「Code for IBM i」をインストールし、VSCodeを操作することで、「Code for IBM i」のIFS BROWSER を使ってPHPコードを編集することができます。

最初に表示されるリストは大抵ホームディレクトリです。

通常行うべきことは、作業ディレクトリをPHPアプリ(又はPHPリポジトリ)がある場所に変更することです。

「Change directory」ボタンで実行することができます。

 

 

ここから作業ディレクトリ内の任意のサブディレクトリやソースコードを参照することができます。

 

 

IFS BROWSERではファイルの保存か、Ctrl+S(Macの場合Command+S)を押すことで、変更内容をIBM i IFSへ簡単に保存することができます。

 

ソース管理

「Code for IBM i」が利用できるだけでなく、リモートサーバー(あたなのIBM i等)用のGitクライアントも利用できることはご存知ですか?

Gitクライアントは「Code for IBM i」と直接連携しているので、Gitクライアントをインストールすると、ソース管理に新しいビューが表示されます。

これは現在の作業ディレクトリが何であろうとも、Gitリポジトリでもあると仮定しています。

 

 

Git Client for IBM iの拡張機能には、以下の機能があります。

  • 作業ツリーのステータス:追加、取り消し、コミットを行う前の作業ツリーとの差分表示
  • インテグレーションログ:特定のコミットにおける特定のファイルの差分をエディター上で確認可能
  • ファイル履歴:現在開いているファイルの履歴確認が可能

 

VSCode +「Code for IBM i」= 効率的でパワフルなPHP開発

私のPHP開発者の友人の中には、素早いセットアップ、読み込み及び保存、そして無料且つ時間を節約できる開発者の生産性向上機能を備えた、IBM i上でPHPを編集する方法を探していました。

私は彼らのためにこのブログを書きました。

「Code for IBM i」はVSCodeの機能にIFS編集の容易さを加えたものです。

それと同時にRPG、COBOL、CLの開発やSQL文の実行をしたい場合でも、あなたは全て同じエディターから作業することができます。