鍍金池/ 問答/PHP/ php file_get_contents最后2個參數(shù)如何理解??

php file_get_contents最后2個參數(shù)如何理解??

直接上代碼吧,有如下幾種情況,讀取的文件test.txt的內(nèi)容,test.txt內(nèi)容就是一句中文字符串:一點滴水啊

$homepage = file_get_contents('test.txt');
$homepage = mb_convert_encoding($homepage, "UTF-8","GBK"); //編碼轉(zhuǎn)換為utf-8防止亂碼
echo $homepage;
輸出結(jié)果:一點滴水啊

現(xiàn)在修改第一句代碼,其他不變
$homepage = file_get_contents('test.txt',NULL,NULL,0,1); //結(jié)果什么都沒有
$homepage = file_get_contents('test.txt',NULL,NULL,0,2); //結(jié)果是:一
$homepage = file_get_contents('test.txt',NULL,NULL,0,3); //結(jié)果是:一
$homepage = file_get_contents('test.txt',NULL,NULL,0,4); //結(jié)果是:一點
$homepage = file_get_contents('test.txt',NULL,NULL,0,5); //結(jié)果是:一點
$homepage = file_get_contents('test.txt',NULL,NULL,0,6); //結(jié)果是:一點滴

現(xiàn)在迷惑的是最后2個參數(shù)的意義是什么?怎么出來的結(jié)果是一頭霧水?如果是英文字符串我理解的,最后一個參數(shù)是長度還是字節(jié)數(shù)?在我的代碼下貌似不管是長度還是字節(jié)數(shù)(中文在utf8下是3個字節(jié),而且已經(jīng)確定我的編碼是utf8的)都對應(yīng)不上結(jié)果.

回答
編輯回答
涼薄
已經(jīng)確定我的編碼是utf8

。。。。

mb_convert_encoding($homepage, "UTF-8","GBK")

是將編碼從GBK轉(zhuǎn)成UTF-8,轉(zhuǎn)換后正常輸出,說明原先編碼絕不是UTF-8

下面才是UTF-8的輸出結(jié)果

clipboard.png

2018年6月3日 03:30