欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php模拟socket一次连接,多次发送数据的实现代码

程序员文章站 2022-05-24 13:51:55
复制代码 代码如下:
复制代码 代码如下:

<?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\r\n";
$header.= "host : {$host}\r\n";
$header.= "content-type: application/x-www-form-urlencoded\r\n";
$header.= "content-length:".strlen($data)."\r\n";
//keep-alive是关键
$header.= "connection: keep-alive\r\n\r\n";
$header.= "{$data}\r\n\r\n";
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')."\r\n";
fwrite($fp,$data);
fclose($fp);
?>