好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

fsockopen — 打开一个网络连接或者一个Unix套接字连接

fsockopen?—?打开一个网络连接或者一个Unix套接字连接

fsockopen

(PHP 4, PHP 5, PHP 7)


说明

resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] )

初始化一个套接字连接到指定主机( hostname )。

PHP支持以下的套接字传输器类型列表 所支持的套接字传输器(Socket Transports)列表 。也可以通过 stream_get_transports() 来获取套接字传输器支持类型。

默认情况下将以阻塞模式开启套接字连接。当然你可以通过 stream_set_blocking() 将它转换到非阻塞模式。

stream_socket_client() 与之非常相似,而且提供了更加丰富的参数设置,包括非阻塞模式和提供上下文的的设置。

参数 hostname

如果安装了 OpenSSL ,那么你也许应该在你的主机名地址前面添加访问协议 ssl:// 或者是 tls:// ,从而可以使用基于TCP/IP协议的SSL或者TLS的客户端连接到远程主机。

port

端口号。如果对该参数传一个-1,则表示不使用端口,例如 unix:// 。

errno

如果传入了该参数,holds the system level error number that occurred in the system-level connect() call。

如果 errno 的返回值为 0 ,而且这个函数的返回值为 FALSE ,那么这表明该错误发生在套接字连接( connect() )调用之前,导致连接失败的原因最大的可能是初始化套接字的时候发生了错误。

errstr

错误信息将以字符串的信息返回。

timeout

设置连接的时限,单位为秒。

Note :

注意:如果你要对建立在套接字基础上的读写操作设置操作时间设置连接时限,请使用 stream_set_timeout() , fsockopen() 的连接时限( timeout )的参数仅仅在套接字连接的时候生效。

返回值

fsockopen() 将返回一个文件句柄,之后可以被其他文件类函数调用(例如: fgets() , fgetss() , fwrite() , fclose() 还有 feof() )。如果调用失败,将返回 FALSE 。

错误/异常

如果主机( hostname )不可访问,将会抛出一个警告级别( E_WARNING )的错误提示。

更新日志 版本 说明 4.3.0 在win32系统上增加了对时限设置( timeout )参数的支持。 4.3.0 在TCP/IP协议的基础上增加了SSL和TLS。

范例

Example #1 fsockopen() 的例子

0

阅读 ┊ 评论 ┊ 收藏 ┊ 转载 ┊ 喜欢 ▼ ┊ 打印 ┊ 举报

已投稿到:

排行榜

加载中,请稍候......

前一篇: PHP技术开发微信公众平台

后一篇: parse_url   解析 URL,返回其组成部分

评论 重要提示:警惕虚假中奖信息

[ 发评论 ]

评论加载中,请稍候...

发评论

登录名:密码: 找回密码 注册 记住登录状态

昵   称:

评论并转载此博文

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

< 前一篇 PHP技术开发微信公众平台

后一篇 > parse_url   解析 URL,返回其组成部分

赞赏码

非学,无以致疑;非问,无以广识

查看更多关于fsockopen — 打开一个网络连接或者一个Unix套接字连接的详细内容...

  阅读:38次