php中關(guān)于socket的系列函數(shù)總結(jié)
本文列舉了所有關(guān)于PHP語(yǔ)言中使用socket相關(guān)服務(wù)的一些函數(shù)。注意使用如下函數(shù)之前,你需要確保你的socket已打開,如果你沒(méi)有打開,請(qǐng)編輯你的php.ini文件,去掉下面這行前面的注釋(分號(hào)):
extension=php_sockets.dll
如果你無(wú)法去掉注釋,那么請(qǐng)使用下面的代碼來(lái)加載擴(kuò)展庫(kù):
<?php
if(!extension_loaded('sockets')){
if(strtoupper(substr(PHP_OS,3))=="WIN"){
dl('php_sockets.dll');
}else{
dl('sockets.so');
}
}
如果你不知道你的socket是否打開,那么你可以使用phpinfo()函數(shù)來(lái)確定socket是否打開。你通過(guò)查看phpinfo信息了解socket是否打開。
php socket 相關(guān)函數(shù)如下:
socket_accept() 接受一個(gè)Socket連接
socket_bind() 把socket綁定在一個(gè)IP地址和端口上
socket_clear_error() 清除socket的錯(cuò)誤或者最后的錯(cuò)誤代碼
socket_close() 關(guān)閉一個(gè)socket資源
socket_connect() 開始一個(gè)socket連接
socket_create_listen() 在指定端口打開一個(gè)socket監(jiān)聽
socket_create_pair() 產(chǎn)生一對(duì)沒(méi)有區(qū)別的socket到一個(gè)數(shù)組里
socket_create() 產(chǎn)生一個(gè)socket,相當(dāng)于產(chǎn)生一個(gè)socket的數(shù)據(jù)結(jié)構(gòu)
socket_get_option() 獲取socket選項(xiàng)
socket_getpeername() 獲取遠(yuǎn)程類似主機(jī)的ip地址
socket_getsockname() 獲取本地socket的ip地址
socket_iovec_add() 添加一個(gè)新的向量到一個(gè)分散/聚合的數(shù)組
socket_iovec_alloc() 這個(gè)函數(shù)創(chuàng)建一個(gè)能夠發(fā)送接收讀寫的iovec數(shù)據(jù)結(jié)構(gòu)
socket_iovec_delete() 刪除一個(gè)已經(jīng)分配的iovec
socket_iovec_fetch() 返回指定的iovec資源的數(shù)據(jù)
socket_iovec_free() 釋放一個(gè)iovec資源
socket_iovec_set() 設(shè)置iovec的數(shù)據(jù)新值
socket_last_error() 獲取當(dāng)前socket的最后錯(cuò)誤代碼
socket_listen() 監(jiān)聽由指定socket的所有連接
socket_read() 讀取指定長(zhǎng)度的數(shù)據(jù)
socket_readv() 讀取從分散/聚合數(shù)組過(guò)來(lái)的數(shù)據(jù)
socket_recv() 從socket里結(jié)束數(shù)據(jù)到緩存
socket_recvfrom() 接受數(shù)據(jù)從指定的socket,如果沒(méi)有指定則默認(rèn)當(dāng)前socket
socket_recvmsg() 從iovec里接受消息
socket_select() 多路選擇
socket_send() 這個(gè)函數(shù)發(fā)送數(shù)據(jù)到已連接的socket
socket_sendmsg() 發(fā)送消息到socket
socket_sendto() 發(fā)送消息到指定地址的socket
socket_set_block() 在socket里設(shè)置為塊模式
socket_set_nonblock() socket里設(shè)置為非塊模式
socket_set_option() 設(shè)置socket選項(xiàng)
socket_shutdown() 這個(gè)函數(shù)允許你關(guān)閉讀、寫、或者指定的socket
socket_strerror() 返回指定錯(cuò)誤號(hào)的詳細(xì)錯(cuò)誤
socket_write() 寫數(shù)據(jù)到socket緩存
socket_writev() 寫數(shù)據(jù)到分散/聚合數(shù)組
- PHP使用socket發(fā)送HTTP請(qǐng)求的方法
- 利用PHP如何實(shí)現(xiàn)Socket服務(wù)器
- php 利用socket發(fā)送HTTP請(qǐng)求(GET,POST)
- PHP的Socket網(wǎng)絡(luò)編程入門指引
- 詳解php的socket通信
- php自定義類fsocket模擬post或get請(qǐng)求的方法
- php+html5基于websocket實(shí)現(xiàn)聊天室的方法
- PHP的Socket通信之UDP通信實(shí)例
- php使用socket post數(shù)據(jù)到其它web服務(wù)器的方法
- PHP SOCKET編程詳解
- php socket通信(tcp/udp)實(shí)例分析
相關(guān)文章
PHP7.1中使用openssl替換mcrypt的實(shí)例詳解
這篇文章主要介紹了PHP7.1中使用openssl替換mcrypt的實(shí)例詳解,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2018-07-07在Laravel5.6中使用Swoole的協(xié)程數(shù)據(jù)庫(kù)查詢
這篇文章主要介紹了在Laravel5.6中使用Swoole的協(xié)程數(shù)據(jù)庫(kù)查詢,詳細(xì)的介紹了什么是Swoole,以及Laravel5.6中使用Swoole,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-06-06Ajax實(shí)時(shí)驗(yàn)證用戶名/郵箱等是否已經(jīng)存在的代碼打包
一個(gè)網(wǎng)站采用Ajax技術(shù),不僅可以改善網(wǎng)站的用戶體驗(yàn)性,而且大大節(jié)約了寶貴的帶寬,減輕了服務(wù)器負(fù)荷(不再需要交互整個(gè)網(wǎng)頁(yè)內(nèi)容,而是局部)。2011-12-12php 無(wú)限分類 樹形數(shù)據(jù)格式化代碼
這篇文章主要介紹了php 無(wú)限分類 樹形數(shù)據(jù)格式化代碼,需要的朋友可以參考下2016-10-10PHP數(shù)組遍歷知識(shí)匯總(包含遍歷方法、數(shù)組指針操作函數(shù)、數(shù)組遍歷測(cè)速)
這篇文章主要介紹了PHP數(shù)組遍歷知識(shí)匯總,本文包含3種遍歷方法、7個(gè)數(shù)組指針操作函數(shù)、對(duì)3種數(shù)組遍歷的速度測(cè)試等內(nèi)容,需要的朋友可以參考下2014-07-07PHP 多任務(wù)秒級(jí)定時(shí)器的實(shí)現(xiàn)方法
這篇文章主要介紹了PHP 多任務(wù)秒級(jí)定時(shí)器的實(shí)現(xiàn)方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05將博客園(cnblogs.com)數(shù)據(jù)導(dǎo)入到wordpress的代碼
博客園限制太多,于是決定從博客園(cnblogs)更換自己個(gè)人的博客。WORDPRESS口碑還不錯(cuò),于是決定用用看。之前發(fā)的數(shù)百篇日志需要導(dǎo)入過(guò)來(lái),在網(wǎng)上搜了一會(huì),發(fā)現(xiàn)沒(méi)有這個(gè)插件,無(wú)奈只能自己寫一個(gè)2013-01-01php序列化函數(shù)serialize() 和 unserialize() 與原生函數(shù)對(duì)比
這篇文章主要介紹了php序列化函數(shù)serialize() 和 unserialize() 與php原生序列化方法對(duì)比,有需要的小伙伴可以參考下。2015-05-05