PHP: Hypertext Preprocessorは、もともとWeb開発のために設計された汎用プログラミング言語です。 1994年にRasmus Lerdorfによって作成されたのが始まりで、それ以来、WordPress、Drupal、Joomlaなどのコンテンツ管理システムで優先的に使用される言語の第一選択肢として使用されています。 2018年の最新の統計では、80%以上のWebサイトがPHPで構築されています。
Node.js
Node.js は、ChromeのV8 JavaScriptエンジンをベースにした、オープンソース、クロスプラットフォーム、JavaScript実行環境であり、ブラウザの外でJavaScriptコードを実行することが可能です。 2009年に開発され、非同期プログラミングを可能にすることが大きな特徴です。
同期コードは行ごとに実行され、現在の行が実行されたときに次の行を実行します。
非同期コードはすべてのコードを同時に実行します。 相違点
JavaScriptとPHPはどちらもHTMLに直接埋め込むことができますが、実行するにはどちらもインタープリターが必要です。 PHP は長い間、サーバー側でのインストールと使用が容易であり、Zend エンジンによって提供されています。
同時実行 :
PHP は同期ですが、同期とは別に非同期に動作するAPIもあります。 マルチスレッド ブロッキング I/O を使用して、複数のタスクを実行し、互いに並行して実行します。
Node.js は本質的に非同期です。つまり、JavaScript エンジンはコード全体を一度に実行し、関数が戻るのを待つことはありません。 イベント駆動型のノンブロッキングI/O実行モデルを使用します。
モジュール :
PHPはPEAR(再利用可能なPHPコンポーネントのためのフレームワークと配布システム)のようなモジュールをインストールする技術を使用しています。
拡張性:
PHP は、ほとんどの一般的なコンテンツ管理システム (Drupal, Joomla, WordPress など) でサポートされており、ブログや電子商取引 Web アプリケーションを構築するツールとしてしばしば選択されます。 これに対し、Node.jsは、多数のI/O操作を扱うスケーラブルな動的ソリューションを作成するためのツールとして効率的に機能する。
Web Servers :
PHP は Apache Web サーバーで動作します。 また、Windowsマシンの場合は、IISウェブサーバー上で動作させることができます。 NPM は Web サーバーを必要とせず、独自のランタイム環境で動作します。
パフォーマンス :
非同期モデルのため Node.js は常に高性能なものとして強調されていますが、PHP もこの方向で発展しています。 ReactPHP などのライブラリにより、イベント駆動型プログラミングでも PHP を使用できるようになりました。