socket_create和stream_socket_server创建出来的socket有啥区别?

0

socket_create和stream_socket_server创建出来的socket有啥区别?有和优劣?
workerman为什么选择stream_socket_server?

已邀请:

walkor

赞同来自: yaxiaomu

socket
socket_create 创建的socket更底层,基本和c的socket接口一样,可以设置很多socket选项,
和c接口一样使用起来比较繁琐。操作底层socket必须使用socketxx系列函数,无法使用stream类型的函数,比如无法使用fread fwrite,同时也就无法使用stream相关的过滤器、streamWrapper、ssl加密等。使用socket*必须安装socket扩展。


stream_socket
stream_socket_server 是php自带的接口,不需要安装任何扩展。接口使用非常简单,socket_xx几行代码搞定的事情stream_socket_server一行就搞定了。缺点也很明显,很多socket选项没办法自定义。
stream_socket_server创建的socket属于stream类型,可以用stream相关的函数操作,fread、fwrite等等都行。可以使用stream相关的高级特性,过滤器、streamWrapper、ssl加密等。

要回复问题请先登录注册