不明白代碼是什么切換下一行?
$file_handle = fopen("/data/webroot/resource/php/f.txt","r");//讀取文件
if ($file_handle){//當(dāng)$file_handle滿(mǎn)足什么條件時(shí)執(zhí)行
while (!feof($file_handle)) {//判斷是否最后一行
$line = fgets($file_handle);//讀取一行文本
echo $line;//輸出文本內(nèi)容
echo "<br />";//輸入換行
但是哪里是讓代碼執(zhí)行讀取下一行?如果<br/>可以的換,我嘗試不用while語(yǔ)句也讀取不了第二行啊。
2022-01-02
$file_handle的值是“Resource id”,要是無(wú)法讀取文件的話,if語(yǔ)句就不會(huì)執(zhí)行
(我測(cè)試了一下,發(fā)現(xiàn)無(wú)法讀取會(huì)直接報(bào)錯(cuò))
fgets()函數(shù)固定每次讀取一行,所以執(zhí)行一次fgets()函數(shù)后 再進(jìn)行讀取就會(huì)自動(dòng)輪到讀取下一行
而while語(yǔ)句的作用就是讓fgets()函數(shù)在即將讀不到內(nèi)容時(shí)停下來(lái)
(沒(méi)讀到文件結(jié)尾處的EOF標(biāo)識(shí)才會(huì)進(jìn)行讀取操作)
echo "<br />";//換行
這句話的作用是輸出換行而不是輸入換行。因?yàn)閒gets()函數(shù)在輸出時(shí)不會(huì)帶上換行符,因此需要寫(xiě)這句話來(lái)手動(dòng)換行。