ホームページ >バックエンド開発 >PHPチュートリアル >PHPにインスタントプッシュ機能を追加する方法

PHPにインスタントプッシュ機能を追加する方法

不言
不言オリジナル
2018-07-04 16:57:452420ブラウズ

この記事では主に PHP にインスタント プッシュ関数を追加する方法を紹介します。これには一定の参考値があります。今、あなたに共有します。困っている友達は参考にしてください。

ブラウザを開いてシェイクし続けてください。 websocket

Workerman を使用してそれを引き継ぐには、多くの時間がかかりました。現在、Workerman はコードを最適化しています - 》https://www.workerman.net/web-sender

効果 1:

メッセージの受信ページ: http://demos.workerman.net/web-sender /

プッシュ インターフェイスの URL: http://demos.workerman.net:2121/?type=publish&to=uid&content=content
to はメッセージを受信するための UID です。空の場合、メッセージは全員にプッシュされ、内容はメッセージの内容です

#効果 2:

このページのフッターにあるオンライン統計セクションを参照してください。リアルタイムのオンライン ユーザーおよびオンライン ページ統計をサポートします。

その他のアプリケーション

vmstat サーバー ステータス監視サービス

WEBメッセージ プッシュ フレームワーク

#BrowserQuest PHP バージョン カメラ ビデオ ライブ ブロードキャスト Thrift RPC リモート呼び出しフレームワーク Json RPC リモート呼び出しフレームワーク チャット ルーム フレームワーク 統計監視システム PHP オタマジャクシ リアルタイム インタラクティブ ゲーム hotflappy 鳥 マルチプレイヤー オンライン バージョン ゲーム

インストール起動

まず: マニュアルを参照してワーカーマン環境の確認/インストールを行う

1. ダウンロード: (web-msg-sender をダウンロードし、任意のディレクトリ

# に展開します) ##2. 起動: Linux システム cd でフレームワーク ディレクトリに移動し、

php start.php start -d

を実行します。Windows システムはフレームワーク ディレクトリに入り、start_for_win.bat ファイルをダブルクリックして起動します。 3. テスト: ブラウザのアクセス ポート http://ip:2123 または http://ドメイン名:2123。たとえば、図では http://workerman.net:2123 が示されています: (アクセスできない場合)サーバーのファイアウォールを確認し、クラウド サーバーの場合はセキュリティ グループを設定してください)

フロントエンド テスト:

<script src=&#39;http://cdn.bootcss.com/socket.io/1.3.7/socket.io.js&#39;></script>
<script>
    // 连接服务端,workerman.net:2120换成实际部署web-msg-sender服务的域名或者ip
    var socket = io(&#39;http://workerman.net:2120&#39;);
    // uid可以是自己网站的用户id,以便针对uid推送以及统计在线人数
    uid = 123;
    // socket连接后以uid登录
    socket.on(&#39;connect&#39;, function(){
    	socket.emit(&#39;login&#39;, uid);
    });
    // 后端推送来消息时
    socket.on(&#39;new_msg&#39;, function(msg){
        console.log("收到消息:"+msg);
    });
    // 后端推送来在线数据时
    socket.on(&#39;update_online_count&#39;, function(online_stat){
        console.log(online_stat);
    });
</script>

バックエンド API を呼び出して任意のユーザーにプッシュします:

<?php
// 指明给谁推送,为空表示向所有在线用户推送
$to_uid = "";
// 推送的url地址,使用自己的服务器地址
$push_api_url = "http://workerman.net:2121/";
$post_data = array(
   "type" => "publish",
   "content" => "这个是推送的测试数据",
   "to" => $to_uid, 
);
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $push_api_url );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $post_data );
curl_setopt ($ch, CURLOPT_HTTPHEADER, array("Expect:"));
$return = curl_exec ( $ch );
curl_close ( $ch );
var_export($return);

When running on Linux, you might need PHP's posix and pcntl extensions

WorkerMan のプッシュは、YII2 [2.0 version]

以降に追加されます。これが、の全内容です。この記事が皆様の学習に役立つことを願っています。その他の関連コンテンツについては、PHP 中国語 Web サイトに注目してください。

関連する推奨事項:

PHP ファイルとディレクトリの操作

短いリンクを生成するための php メソッド

以上がPHPにインスタントプッシュ機能を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。