php模拟socket一次连接,多次发送数据的实现代码
author:一佰互联 2019-04-30   click:159
复制代码 代码如下:
<?php
//post.php
function Post($host,$port)
{
//$host="127.0.0.1";
//建立连接
$conn = fsockopen($host,$port);
if (!$conn)
{
die("Con error");
}
//循环发送5次数据
//
for($i = 0;$i<5;$i++)
{
$data="user_name=admin".$i;
WriteData($conn,$host,$data);
echo $i."<br />";
}
fclose($conn);
}
function WriteData($conn,$host,$data)
{
$header = "POST /test.php HTTP/1.1";
$header.= "Host : {$host}";
$header.= "Content-type: application/x-www-form-urlencoded";
$header.= "Content-Length:".strlen($data)."";
//Keep-Alive是关键
$header.= "Connection: Keep-Alive";
$header.= "{$data}";
fwrite($conn,$header);
//取结果
//$result = "";
//while(!feof($conn))
//{
// $result .= fgets($conn,128);
//}
//return $result;
}
Post("127.0.0.1",80);
?>

复制代码 代码如下:
<?php
//test.php
$fp = fopen("result.txt","a");
$data = $_POST["user_name"]." -- ". date("Y-m-d H:i:s")."";
fwrite($fp,$data);
fclose($fp);
?>