mb_strlen httpdown php

原创
2016-06-23 14:35:55 975浏览

if(!function_exists("mb_strlen1"))
{
function mb_strlen1($str,$enc='gb2312')
{
$l=0;
for($i=0;$i {
if(ord($str[$i])>128)
{
if($enc=='gb2312')
{
$i++;
}
else if($enc=='utf8'||$enc=='utf-8')
{
$i+=2;
}
}
$l++;
}
return $l;
}
}

echo "/$l=".mb_strlen1("我市1ge中国人");

function socketData($host,$url,$headers='',$data){ $fp = @fsockopen($host, 80, $errno, $errstr, 30); if (!$fp) { return false; } else { $out = ($data?"POST":"GET")." ".$url." HTTP/1.1\r\n"; $out .= "Host: ".$host."\r\n"; $out .= $headers; $out .= "Connection: Close\r\n\r\n".$data; fwrite($fp, $out); $rtn = ""; while (!feof($fp)) { $rtn.= fgets($fp, 128); } fclose($fp); } //echo $rtn; $rtn=explode("\r\n\r\n",$rtn,2); $headerstr=explode("\r\n",$rtn[0]); //echo print_r($headerstr,1).'->'.__LINE__."
\r\n"; $headers=array(); foreach($headerstr as $str) { $tmp=explode(':',$str,2); if(count($tmp)==2) { $headers[$tmp[0]]=trim($tmp[1]); } } if(isset($headers['Transfer-Encoding'])&&$headers['Transfer-Encoding']=='chunked') { $body=$rtn[1]; $rs=explode("\r\n",$body,2); $tmp=''; while(count($rs)==2) { $l=hexdec($rs[0]); if($l==0) break; $tmp.=substr($rs[1],0,$l); $body=substr($rs[1],$l+2); if($body=='') break; $rs=explode("\r\n",$body,2); } $rtn[1]=$tmp; } //Set-Cookie if($headers['Location']) { return ($headers['Set-Cookie']?"Set-Cookie: ".$headers['Set-Cookie']."\r\n":"").'Location: '.$headers['Location']; } return $rtn[1]; }


echo socketData(**.cn','/index.php',"Cookie: lstat_bc_644048=27325049701746404581; PHPSESSID=addf71fbaf5e1efd9520d1aea8a69b66/r/n")

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。