PHP實現消息推送


我們做web的時候偶爾會遇到消息推送,如圖示例(紅框位置)

 

當我們遇到這種功能要如何開發呢?下邊將我了解的兩種方法整理一下:

一、ajax輪詢,定時去請求服務器數據

通過觀察thinkphp官網貌似也是用的這個方法,下邊將這種方法整理一下:

Notify.php
//獲取通知消息
    public function getNotifyCount()
    {
        $msg = db('message_logs')->where('isscan',0)->count();
        RestfulTools::restData($msg); //這里是封裝好的json_encode方法
    }

 

notify.js
<span class="am-icon-envelope-o"></span> 消息 <span class="am-badge am-badge-warning" id="msgCount"> 
{$msgCount} //這是是通過tp的 assign方法分配過來的變量,作為初始值
</span>

<script type="text/javascript"> var getting = { url:"{:url('Notify/getNotifyCount')}", dataType:'json', success:function(res) { console.log(res); var msgCount = res.result; $("#msgCount").html(msgCount); //用js的 html方法去改變id為msgCount的值 } }; //Ajax定時訪問服務端,這里是3分鍾請求一次。 window.setInterval(function(){ $.ajax(getting) },180000); </script>

二.websocket實時消息推送

這里還沒測試,測試完即將完善


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM