成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

ThinkPHP 3.2 整合 Workerman 踩坑

OpenDigg / 2793人閱讀

摘要:一號坑整合加載第三方有幾種方式,具體參考官方手冊我用的是第一種命名空間自動加載的方式,因為我下的版本是有命名空間的,所以一定要把目錄放對了,把文件夾放到下,并且把里面除文件外的所有文件改為結(jié)尾。

由于需要開發(fā)長連接應(yīng)用,要用到了Workerman,我是Windows的服務(wù)器,所以要把Wokerman裝到windows,不得不說Windows做服務(wù)器那真是「好用」啊,一開始自己按照Workerman手冊,結(jié)果發(fā)現(xiàn)裝完后啟動不了,網(wǎng)上找了很多安裝教程都是基于linux的,win真的是少得可憐,僅有的幾篇還不完整,最后大概花了一天的時候自己搞定的,分享出來,省得別人入坑。

一號坑——整合

TP3.2 加載第三方有幾種方式,具體參考官方手冊:http://document.thinkphp.cn/m...
我用的是第一種命名空間自動加載的方式,因為我下的Workerman版本是有命名空間的,所以一定要把目錄放對了,把Wokerman文件夾放到ThinkPHP/Library/下,并且把里面除Constants.php文件外的所有文件改為.class.php結(jié)尾。

二號坑——載入

在應(yīng)用目錄下如HomeController下新建WorkermanController.class.php文件

namespace HomeController;
use ThinkController;
use WorkermanWorker;
class WorkerManController{
    public function index(){
        if(!IS_CLI){
            die("無法直接訪問,請通過命令行啟動");
        }
        $worker = new WorkermanWorker("websocket://127.0.0.1:2346");
        // 當(dāng)收到客戶端發(fā)來的數(shù)據(jù)后返回hello $data給客戶端
        $worker->onWorkerStart = function($worker){
            echo "Worker starting...
";
        };
        $worker->onMessage = function($connection, $data)
        {
            // 向客戶端發(fā)送hello $data
            $connection->send("hello ".$data);
        };
        // 運(yùn)行worker
        Worker::runAll();
        
    }
}

然后可以打印一下試試能不能輸出$worker,如果正常輸出則說明worker類被成功加載。

三號巨坑——啟動

Workerman啟動只能通過命令行,也就是CMD的方式來啟動,直接訪問網(wǎng)址是不行的,這里也是困擾了我好久,在TP框架內(nèi)的啟動有點特殊,不能直接訪問php文件,要通過TP的路由訪問(有點像我們訪問網(wǎng)址的方式),而且啟動的路徑要對。

首先進(jìn)到網(wǎng)站的根目錄,也就是和index.php平級的目錄,建立一個bat文件,編輯內(nèi)容如下:

php index.php Home/Workerman

(這里編輯的內(nèi)容可能跟你的路由設(shè)置有關(guān)系,我這里是默認(rèn)沒改過框架路由的)
雙擊運(yùn)行bat文件即可看到成功運(yùn)行

這篇教程完全是原創(chuàng)的,希望能幫助到大家,感覺有用的話給個贊吧~

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/25647.html

相關(guān)文章

  • TP5整合 WorkerMan 以及 GatewayWorker

    摘要:將解壓后的文件夾中的復(fù)制到的根目錄,即與同級的目錄。將文件中最后部分循環(huán)括號內(nèi)的路徑改為自己的正確路徑。整合版安裝使用,來安裝進(jìn)入根目錄,即。安裝成功之后刪除。加載框架引導(dǎo)文件創(chuàng)建的,命名為。在,目錄不存在自行創(chuàng)建。 TP5整合GatewayWorker Windows版安裝 a)使用composer create-project topthink/think testTG,來安裝th...

    Tony 評論0 收藏0
  • TP5整合 WorkerMan 以及 GatewayWorker

    摘要:將解壓后的文件夾中的復(fù)制到的根目錄,即與同級的目錄。將文件中最后部分循環(huán)括號內(nèi)的路徑改為自己的正確路徑。整合版安裝使用,來安裝進(jìn)入根目錄,即。安裝成功之后刪除。加載框架引導(dǎo)文件創(chuàng)建的,命名為。在,目錄不存在自行創(chuàng)建。 TP5整合GatewayWorker Windows版安裝 a)使用composer create-project topthink/think testTG,來安裝th...

    Fundebug 評論0 收藏0
  • thinkphp 5.0整合phpsocketio完整攻略,繞坑

    摘要:使用環(huán)境項目需求前端下單,后臺接受,并立即做出提示。例如美團(tuán)外賣,客戶端下單成功后,商家端就會立即有接單語音提示。為了能理解,我用目錄展示應(yīng)用目錄新創(chuàng)建目錄啟動文件入口文件只是綁定到了這個控制器,所以這個是整個的核心。 使用環(huán)境: thinkphp5.0 項目需求 前端下單,后臺接受,并立即做出提示。例如:美團(tuán)外賣,客戶端下單成功后,商家端就會立即有接單語音提示。 開發(fā)環(huán)境 thi...

    王笑朝 評論0 收藏0
  • Notadd 2.0 全新 Node.js 版本~ (開發(fā)中) [從 PHP 到 node 的踩坑

    摘要:有著最全的協(xié)議支持,同時有各種非阻塞拓展,可以說是最符合要求的,但是異步需要對做很大的改動。的計劃將基于開發(fā),同時也提供一些無法提供的功能和特性。 一點小遺憾 對于 Notadd 我們本來期望它實現(xiàn)更多... 盡管我們也嘗試做了很多努力,但是由于 PHP 本身的局限,以及考慮到開發(fā)環(huán)境配置的復(fù)雜程度,最終使用了折中方案。接下來,我們談?wù)務(wù)麄€技術(shù)選型歷程,也供今后相關(guān)開發(fā)者做借鑒和參考:...

    Tonny 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<