18章異なるプラットフォームでのPHP

 PHPをWindowsシステムで使用する理由はいろいろありますが、最も多いのは、Windowsのデスクトップマシンでウェブアプリケーションを開発したいから、という理由でしょう。現在、WindowsでのPHP開発は、Unixプラットフォームでの開発と遜色なく行えるようになっています。PHPはWindowsで正常に動作し、PHPのサポートするサーバーやアドオンツールもWindows版が存在します。これは、PHPをどのプラットフォームで動作させるかというのは、今や好みの問題になってきている、ということです。PHPは元来、クロスプラットフォームであることを目指しているので、Windows上にPHPの開発環境を設定するのは難しい話ではなく、インストールや設定の手順も簡単になっています。

18.1 WindowsとUnixで共用できるコードの書き方

 PHPをWindows上で動かしたい主な理由の1つは「手元のWindows環境で開発とテストを行い、それを実際のサーバーにアップロードしているから」ということでしょう。ほとんどの場合、実運用環境はUnix系のサーバーなので、あまり手を加えずにどちらの環境でも動作するコードを書いておくようにしたいものです。

 問題が出そうな箇所としては、外部ライブラリの使用、プラットフォーム固有のファイル入出力、プラットフォーム固有のセキュリティ機能、システムデバイスへのアクセス、スレッドの使用、ソケット通信、シグナルの使用、外部の実行ファイルの使用、そしてプラットフォーム固有のユーザインターフェイスの使用などが考えられます。

 幸い、もともとPHPはクロスプラットフォームでの開発を考慮して作成されています。たいていの場合は、多少手を加えるだけでPHPスクリプトをWindowsからUnixに移植できます。しかし、いくつか問題があることも知られています。たとえば、初期のPHPで実装されていた関数の中には、Windows上で動作する同等の関数を自分で作成しなければならないものもあります。また、PHPを動かしているウェブサーバーの種類に依存する関数もあります。 ...

Get プログラミングPHP 第4版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.