PHP を使用してイベントベースのアプリケーションを構築する方法
PHP でイベントベースのアプリケーションを構築する方法には、EventSource API を使用してイベント ソースを作成する方法と、クライアントで EventSource オブジェクトを使用してイベントをリッスンする方法が含まれます。 Server Sent Events (SSE) を使用してイベントを送信し、XMLHttpRequest オブジェクトを使用してクライアント側でイベントをリッスンします。実際の例は、電子商取引 Web サイトで EventSource を使用して在庫数をリアルタイムで更新することです。これは、サーバー側で在庫をランダムに変更して更新を送信することで実現され、クライアントは EventSource を通じて在庫の更新をリッスンし、それらを表示します。リアルタイム。
PHP を使用してイベントベースのアプリケーションを構築する方法
現代の Web 開発では、イベントベースのアプリケーションがますます増えています。ますます人気が高まっています。これにより、開発者はユーザー インタラクション、サーバー イベント、その他のトリガーに応答するアプリケーションを作成できます。 PHP は、人気のあるサーバー側プログラミング言語として、イベントベースのアプリケーションの構築に強力なサポートを提供します。
EventSource API
PHP は EventSource API を提供します。これにより、ブラウザーはサーバーとの永続的な接続を確立し、サーバー側でイベントが発生したときにデータを受信できます。
EventSource を使用するには、まずサーバー側でイベント ソースを作成する必要があります。
<?php header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); $count = 0; while (true) { echo "data: {$count}\n\n"; $count++; flush(); sleep(1); } ?>
これにより、クライアントに毎秒数値を送信するイベント ソースが作成されます。
クライアントで EventSource を使用する
次に、クライアントで EventSource を使用してイベント ソースをリッスンできます。
var source = new EventSource('/events'); source.onmessage = function(event) { console.log(event.data); };
これにより、 EventSource インスタンスとサーバーからのイベントをリッスンします。サーバーがデータを送信すると、そのデータがコンソールに出力されます。
プッシュベースのサーバー送信イベント (SSE)
SSE は、関数を提供するイベントベースのアプリケーションを作成するためのもう 1 つの方法です。 SSE を使用するには、まず PHP を使用してサーバー側でイベント応答を送信する必要があります。
<?php header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); while (true) { $event = json_encode(['data' => 'some data']); echo "event: {$event}\n\n"; flush(); sleep(1); } ?>
これにより、1 秒ごとに 1 つのサーバー側イベントが送信されます。
クライアントでの SSE の使用
クライアントで XMLHttpRequest (XHR) を使用して SSE イベントをリッスンできます:
var xhr = new XMLHttpRequest(); xhr.addEventListener('message', function(event) { console.log(event.data); }); xhr.open('GET', '/sse', true); xhr.send();
これにより、エンドポイントへの SSE GET リクエストにリンクし、イベントを受信したときにデータを出力します。
実際のケース: 在庫をリアルタイムで更新する
リアルタイムの在庫数を備えた電子商取引 Web サイトを考えてみましょう。イベントベースのアプリケーションを使用すると、Web サイトは在庫が変更されたときに顧客に更新情報を送信できます。
サーバー側では、PHP を使用してイベント ソースを作成し、インベントリが変更されたときに更新を送信できます。
<?php header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); $stock = 100; while (true) { // 随机更改库存 $stock += rand(-10, 10); $event = json_encode(['stock' => $stock]); echo "event: {$event}\n\n"; flush(); sleep(1); } ?>
クライアント側では、EventSource を使用してインベントリの更新をリッスンできます。 :
var source = new EventSource('/stock-updates'); source.onmessage = function(event) { var data = JSON.parse(event.data); document.getElementById('stock-count').innerHTML = data.stock; };
これにより、ページの在庫数がリアルタイムで更新されます。
以上がPHP を使用してイベントベースのアプリケーションを構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
