php對gzip檔案或者字串解壓例項參考

2021-09-08 11:05:46 字數 938 閱讀 6718

要採集乙個**,目標站採用了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 ...