本文实例讲述了php中fsockopen用法。分享给大家供大家参考。7 k3 M( R- n$ ?3 e
具体实现方法如下:
! X* i/ {+ m' |: U8 r8 Z' q复制代码 代码如下:$fp=fsockopen(127.0.0.1,80); //打开数据流
4 P, d8 N( W! Q: [if(!$fp) //如果打开出错
[& K# h6 I3 t{. K: u: @% X- w' U# M+ k
echo unable to openn; //输出内容
( n: Y x0 [2 H& j}. B4 \2 q3 i; s2 q
else //如果成功打开/ {8 m2 D0 {" D# G E
{. N6 G" P; a8 W8 f7 E! b
fwrite($fp,get / http/1.0rnrn); //向数据流写入内容9 X# U) A9 F; S( e+ X& a: v/ V% F
stream_set_timeout($fp,2); //进行超时设置
3 c9 ?) m/ N- v$res=fread($fp,2000); //读取内容7 w4 Y3 }: @% c* l
$info=stream_get_meta_data($fp); //获取数据流报头
1 V o3 ?8 ]( V0 T3 Jfclose($fp); //关闭数据流
9 r: b e- W2 h+ h: i3 e: ?if($info['timed_out']) //如果超时 A- P% ~. X$ R8 w6 j5 q
{
$ }4 t" C2 E9 [9 I/ F9 ~echo 'connection timed out!'; //输出内容
5 H' Z4 L; }* {}
) l X3 O7 y& u7 u# U# relse
% d; g: ^6 V$ r4 d/ c; U5 B7 }{
+ r: p. l! a' j1 `echo $res; //输出读取内容
5 v2 Z- | `5 e. I! H) X: }% S}) ^+ U2 U" [' J
}4 W) [( D4 h1 Y% B8 e
//实例二
0 n/ d! D( ?- i E" } A9 h//创建服务端
" s& H6 n' Z6 S# o' z5 E! I$socket=stream_socket_server(tcp://0.0.0.0:8000,$errno,$errstr);
4 u D. _/ u. T3 q4 g+ ~//如果创建失败0 A. \! p6 I! q" M9 }
if(!$socket)
" t$ v i* s' o5 P/ L{
& N* P1 n K5 C# L( M0 H9 k* \echo $errstr ($errno)<br />n;
% ~8 E# k1 x# l$ y- w+ E4 f! q}) J7 ~2 }( H5 b; S
//如果创建成功4 Q; S5 \& F0 m0 L- c2 f- b
else
/ [1 u$ {1 O% {- k5 m. c& b% P{
$ H/ D1 B v$ c; y6 n8 ^) f//接受连接
. ]' T% P0 w9 G2 C, [- O" Q# N' Hwhile($conn=stream_socket_accept($socket)), w4 G: K, H2 `
{
) V# d% M; f% W# } M& a- m//写入数据
2 m% v5 c, E! o, D1 vfwrite($conn,'the local time is '.date('n/j/y g:i a').n);
3 H8 }. b" D' f" Z* r+ O; v//关闭连接. N7 _! U1 q0 X3 L4 ]- A
fclose($conn);
, w2 f$ W+ L' Z7 b+ ]}
w6 K- w2 x# l$ e- q+ R, |: @//关闭socket
l! X$ P5 L, Q$ vfclose($socket);
0 c4 J: N4 g! N* {2 ]0 `& Z; B, v}
2 n% l% L& O3 Y//- Z# ]) D" r+ q$ ^1 [
$file=test.txt; //定义文件
4 C! N' |( ], v# ~6 `$fp=fopen($file,w); //打开数据流
6 D& J' v6 M, u2 G2 |9 rif($fp) //如果成功打开
J! n: k0 r0 r+ M{% C1 g8 K' M: q1 W
stream_set_write_buffer($fp,0); //设置缓冲区
* P8 J& \. }7 U9 cfwrite($fp,$output); //写入内容1 F1 V9 O4 |3 }5 G! S
fclose($fp); //关闭数据流% ^1 D- n& n5 u8 H
}
7 S/ K" l w9 {: w) `9 X- F希望本文所述对大家的php程序设计有所帮助。
+ {- R7 f- X/ O/ i
" G8 S2 F1 a5 ?7 T) L! ]9 c更多网页制作信息请查看: 网页制作 |