我有一个文件,其中包含以下长单行随机字符串:
fuzzero^G5%eLz@5?0jzlqCA};iBdi>hSa0Uc"DS{m*JVMPMN),)dBnbwGNKYE#uP$3@WGyV#kjC&(2yW1l`DJ,`3Mz#5gbU}eAUU)uB7N><A"qa;M{y9{mdKW"P?4o`jZI<M?tTElL<f?3aC1JM0&ZKGTewYDk;g$`#UhAcD05S>8#tap'aaUVQr`14rl0I3`oY6Z`JZ'fR3:{em"owN{0"(1}en}Wr*,3>Z<AC(Q8?M64(0siNrjGdkEsIB2)n2?e@%PiRjqH&xLSx<|,j8Fxt{Z|z@YW%P|JyE@3Y6KID9f`25)ldtSGrvw@b9C'YrDa&jeIpY5#(lR`qFaE)#,ecv'oFwihYWsI"G5ija,5wQ'Wa4f}*ec{K6n3DGlfgNXa8#tr>sxo}s,7xe4jsgh?nF"!,e"g#Qq|xTgp0ON{;M5s!aL6r$}On>sm5lD(?$XoB<NBGezC!F%EQuL;cIJzz?WFcds2;3rx;<)C6m<*#Xqw6|riy|S(@ts<HU'CYl)Teordizuzfeid
我写了php代码来读这一行:
$myfile = fopen($path, "r") or die("Unable to open file!");
$txt=fgets($myfile);
echo $txt;
fclose($myfile);
输出是随机字符串的一部分:
fuzzero^G5%eLz@5?0jzlqCA};iBdi>hSa0Uc"DS{m*JVMPMN),)dBnbwGNKYE#uP$3@WGyV#kjC&(2yW1l`DJ,`3Mz#5gbU}eAUU)uB7N>8#tap'aaUVQr`14rl0I3`oY6Z`JZ'fR3:{em"owN{0"(1}en}Wr*,3>Zsxo}s,7xe4jsgh?nF"!,e"g#Qq|xTgp0ON{;M5s!aL6r$}On>sm5lD(?$XoB
如何阅读并显示完整的字符串?
答案 0 :(得分:3)
发布的代码运行正常。它从文件中读取527个字节。
如果您在浏览器中运行此PHP脚本,那么您认为它未命中的部分(<A"qa;M{y9{mdKW"P?4ojZI<M?tTElL<f?3aC1JM0&ZKGTewYDk;g$#UhAcD05S>
)看起来像HTML元素,并且浏览器不会显示它。
检查页面源(在菜单或开发人员工具中查找)以查看脚本生成的确切输出。
或者,更好的是,使用PHP header()
函数告诉浏览器脚本生成的内容是文本,而不是HTML:
header('Content-Type: text/plain');
$myfile = fopen($path, "r") or die("Unable to open file!");
$txt=fgets($myfile);
echo $txt;
fclose($myfile);
如果您想一次性阅读文件的全部内容,那么PHP专门为此提供了函数file_get_contents()
:
header('Content-Type: text/plain');
$txt = file_get_contents($path);
echo($txt);