【发布时间】:2016-03-29 07:20:08
【问题描述】:
我正在尝试读取(并回显).txt 文件的所有内容。
这是我的代码:
$handle = @fopen("item_sets.txt", "r");
while (!feof($handle))
{
$buffer = fgets($handle, 4096);
$trimmed = trim($buffer);
echo $trimmed;
}
这是我的“item_sets.txt”:http://pastebin.com/sxapZGuW
但它不会回显所有内容(并且会根据我是否回显以及在其后回显多少个字符来改变它显示的数量)。 var_dump() 告诉我最后一个字符串从未完成打印。看起来像这样:
" string(45) ""[cu_well_tra。但是如果我放一个
echo "whateverthisisjustarandomstringwithseveralcharacters";,
我最后的输出行如下所示:
" string(45) ""[cu_well_traveled_ak47]weapon_ak47" "1"
" string(5) "}
"
基本上我的代码没有打印/回显它应该显示的所有内容,或者至少没有显示它。
提前谢谢:)
【问题讨论】:
-
为什么不在这里使用
print file_get_contents()? -
@ob_start 仍然没有打印所有内容
-
您的代码没有任何问题 - 它读取所有行并输出它们。 除了
trim'吃掉'所有end of line标记,所以当你回显时,你需要使用PHP_EOL。 IE。echo $trimmed, PHP_EOL;。否则你会得到一长串输出。
标签: php while-loop output fopen