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

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?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);
?>

相关文章

使用php实现截取指定长度

PHP语言: 根据中文裁减字符串复制代码 代码如下:function cutstr($string,$length, $dot = ' ...') {  if (strlen(...

php pdo oracle中文乱码的快速解决方法

在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_I...

解析PHP可变函数的经典用法

复制代码 代码如下:<?phpfunction map($fun, $list,$params=array()){    $acc=NULL;&nbs...

php正则修正符用法实例详解

本文实例讲述了php正则修正符用法。分享给大家供大家参考,具体如下: <?php //标记在整个模式之外; // 例://$mode="/\bis\b/U"...

php中获取主机名、协议及IP地址的方法

本文实例讲述了php中获取主机名、协议及IP地址的方法。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:$hostname=gethostbyaddr($_SERVER[...