3 回答

TA貢獻1883條經(jīng)驗 獲得超3個贊
操作方法如下:
$client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC); //同步阻塞
$client->connect('127.0.0.1', 9501) or die("connect failed\n");
$client->send(str_repeat("A", 600));
$data = $client->recv(700, 0) or die("recv failed\n);;
echo "recv: ",$data,"\n";

TA貢獻1826條經(jīng)驗 獲得超6個贊
但這里就開始出現(xiàn)了第一個問題,我們知道,php是一個腳本語言,腳本語言的核心特點在于不用編譯,隨時執(zhí)行,而執(zhí)行腳本的工具就是解析器,而php的解析器就是zend引擎。
嚴格來說,zend并不是唯一的選擇,不過,zend是最官方的。另外,Zend Studio和Zend Engine不是同一個東西,本文中的Zend全部指Zend Engine。
換個角度講,只要有解析器,寫好的php腳本就是可以執(zhí)行的,而zend引擎與apache之間并沒有絕對的關(guān)系
實際上,apahce是調(diào)用了zend對php腳本進行執(zhí)行,然后將執(zhí)行結(jié)果輸出給了瀏覽器
所以所謂cli模式(CommandLine,命令行模式),其實就是在命令行下直接調(diào)用zend引擎對php腳本進行解析并執(zhí)行,并獲得程序輸出結(jié)果的php腳本執(zhí)行方式。
其實php也可以作為shell腳本來使用哦,就像bash shell一樣
既然問題講清楚了,在一個系統(tǒng)中具體怎么操作呢?
本文以CentOS 7.5作為系統(tǒng)環(huán)境,swoole是針對Linux系統(tǒng)開發(fā)的,windows下并不適用。學(xué)習(xí)swoole的一個前題是懂得基本的linux系統(tǒng)使用。
當(dāng)安裝好php的時候,找到php的安裝目錄,如果是默認安裝的話,可以試試whereis命令

TA貢獻1820條經(jīng)驗 獲得超9個贊
操作方法如下:
$client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC); //同步阻塞
$client->connect('127.0.0.1', 9501) or die("connect failed\n");
$client->send(str_repeat("A", 600));
$data = $client->recv(700, 0) or die("recv failed\n);;
echo "recv: ",$data,"\n";
- 3 回答
- 0 關(guān)注
- 245 瀏覽
添加回答
舉報