我有一个PHP脚本,它检索原始/纯文本文件的内容,我想用HTML输出这个原始文本,但是当它以HTML格式输出时,所有的换行符都不再存在.是否有某种PHP功能或其他一些解决方法可以实现这一目标?
例如,如果原始文本文件具有此文本:
你好,
我的名字是
以HTML格式输出时,它会说:
你好我的名字是
有没有办法在HTML中保留这些换行符?谢谢.
(如果有帮助,我的脚本获取原始文本文件的内容,将其放入变量中,我只是回显变量.)
做这件事有很多种方法:
使用file_get_contents()和nl2br():
echo nl2br( file_get_contents( 'filename.txt'));
Run Code Online (Sandbox Code Playgroud)
这不会解决<>&您需要使用的特殊实体htmlspecialchars()
echo nl2br( htmlspecialchars( file_get_contents( 'filename.txt')));
Run Code Online (Sandbox Code Playgroud)
或许更好的解决方案是将整个文件加载到数组中file()并通过所有元素进行迭代(您将来可以将行放入表中)
$data = file( 'filename.txt');
foreach( $data as $line){
echo htmlspecialchars( $line) . '<br />';
}
Run Code Online (Sandbox Code Playgroud)
如果你需要处理大量的数据,它会是最好做到这一点的顺序fopen()和fgets():
$fp = fopen( 'filename.txt', 'r') or die( 'Cannot open file');
while( $line = fgets( $fp)){
echo htmlspecialchars( $line) . '<br />';
}
fclose( $fp);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18584 次 |
| 最近记录: |