mac 環境下搭建socket通訊

2021-08-28 07:38:20 字數 2233 閱讀 7159

1.在目錄/library/webserver/documents/socket下建兩個檔案client_socket.php 和server_socket.php

修改目錄許可權為chmod 777

//建立乙個socket套接流

$socket = socket_create(af_inet,sock_stream,sol_tcp);

/****************設定socket連線選項,這兩個步驟你可以省略*************/

//接收套接流的最大超時時間1秒,後面是微秒單位超時時間,設定為零,表示不管它

socket_set_option($socket, sol_socket, so_rcvtimeo, array("sec" => 1, "usec" => 0));

//傳送套接流的最大超時時間為6秒

socket_set_option($socket, sol_socket, so_sndtimeo, array("sec" => 6, "usec" => 0));

/****************設定socket連線選項,這兩個步驟你可以省略*************/

//連線服務端的套接流,這一步就是使客戶端與伺服器端的套接流建立聯絡

if(socket_connect($socket,'127.0.0.1',8888) == false)elseelse}}

socket_close($socket);//工作完畢,關閉套接流

server_socket.php

<?php 

//建立服務端的socket套接流,net協議為ipv4,protocol協議為tcp

$socket = socket_create(af_inet,sock_stream,sol_tcp);

/*繫結接收的套接流主機和埠,與客戶端相對應*/

if(socket_bind($socket,'127.0.0.1',8888) == false)

//監聽套接流

if(socket_listen($socket,4)==false)

//讓伺服器無限獲取客戶端傳過來的資訊

doelse

/*socket_close的作用是關閉socket_create()或者socket_accept()所建立的套接流*/

socket_close($accept_resource);

}}while(true);

socket_close($socket);

2.測試的時候 需要先開始apahce

mac下開啟apache的方法

sudo -i 輸入密碼 切換為root使用者操作

apachectl start

在終端先開啟server_socket服務

保持一直開著服務端

接著在瀏覽器開啟client_socket.php

如果關閉服務端,再去連線客戶端的話,會報錯

Mac下lamp環境搭建

安裝環境如下 mac os 10.10.1 apache 2.4.9 php 5.5.14 mysql 5.6.22 apache配置 在mac os 10.10.1中是自帶apache軟體的,我們只需要啟動對應的服務就好了,以下命令是操作apache時常用的幾個命令 啟動apache服務 sudo...

mac下ruby on rails環境搭建

最初被迫使用mac的時候,我的心裡,是拒絕的 與windows下反向的滑鼠滑動,薄而無聲的鍵盤,完全不知道什麼是什麼的介面,讓我及其的不適應 兩三天之後我恨不得在臉上刺上幾個字,mac 好 簡直誰用誰知道 ruby是十分高效能的語言,然而由於國內企業更強調快速開發,php成為了行業主流 當然這是乙個...

mac下搭建caffe環境

第一步 安裝homebrew。它是mac下的一種包管理工具,用於快速安裝各種包,類似於linux下的yum和python下的pip。ruby e curl fssl 第二步 利用homebrew安裝caffe的各項依賴包 brew install vd leveldb brew install vd...