要採集乙個**,目標站採用了gzip壓縮傳輸網頁,本來應該只要傳送乙個http頭 accept-encoding:identity或者乾脆不傳送這個頭等,就可以使目標站返回沒有經過gzip壓縮的頁面了,不過很不幸,目標站無視客戶端的請求,仍然返回gzip資料,造成亂碼。其實php對gzip解壓很簡單,用內建的gzdecode函式就可以了,不過很可惜我配置了半天也無法支援gzdecode函式,所以只好變通一下:
複製** **如下:
if (!function_exists('gzdecode'))
if ($flags & 8) //
filename
$headerlen = strpos($data, chr(0), $headerlen) + 1;
if ($flags & 16) //
comment
$headerlen = strpos($data, chr(0), $headerlen) + 1;
if ($flags & 2) //
crc at end of file
$headerlen += 2;
$unpacked = @gzinflate(substr($data, $headerlen
));
if ($unpacked === false
)
$unpacked = $data
;
return
$unpacked
;
}
} 呼叫方法很簡單:
複製** **如下:
$f=@file_get_contents("");
echo gzdecode($f);
php對字串的多種處理
1.字串拼接 str1 hello str2 world 連線上面兩個字串 中間用空格分隔,也可以用,等 str3 str1 str2 2.字串分割 以特殊符號分割 str hello,xiaoming,how are you point explode str,3 引數3表示分割成的陣列中的元素個...
PHP 對字串的常規操作
1 多個字串操作 1 1 字串比較 1 strcmp 比較字串 2 strcasecmp 忽略大小寫比較字串 3 strncmp 比較長度字串 4 strncasecmp 忽略大小寫比較長度字串 5 strnatcmp 自然排序比較字串 6 strnatcasecmp 忽略大小寫自然排序比較字串 1...
php常用對字串操作函式
str i am chinese,i love china echo strlen str 獲取字串的長度 echo trim str 去除空格 echo strtolower str 轉化為小寫 echo strtoupper str 轉化為大寫 不區分大小寫比較 if strcasecmp i ...