0

你好,我有问题从文件中回显内容。

我想要的是解析和回显文件并更改行是否检测到其中的特定字符串(例如 \t:\t)。

这是我当前的代码


$full_file_name_exif_txt = "downloaded2/PisaTower/$entry.exif.txt";

if (file_exists($full_file_name_exif_txt) )

 {

   $file = @fopen($full_file_name_exif_txt, "r");

   while (!feof($file)) 

       {

         if(strpos(file_get_contents("downloaded2/PisaTower/$entry.exif.txt"), " : ")) 

          {

            echo "I found \t:\t and i changed line <br/>";

          }

       }

       fclose($file)

       echo file_get_contents("downloaded2/PisaTower/$entry.exif.txt");

      }

我的文本文件内容


IPTC:CodedCharacterSet : UTF8 IPTC:ApplicationRecordVersion : 105 IFD1:Compression : JPEG(旧式) IFD1:ResolutionUnit : 英寸 IFD1:ThumbnailOffset

期望文本文件输出


IPTC:编码字符集

: UTF8 IPTC:ApplicationRecordVersion

: 105 IFD1:压缩

: JPEG (旧式) IFD1:ResolutionUni

t: 英寸 IFD1:ThumbnailOffset

提前致谢!

4

2 回答 2

0

您是否使用浏览器查看结果(而不是在 shell 控制台中)?HTML 中不显示回车和选项卡(由唯一的空格替换)。

在这种情况下,nl2br() 函数可能会有一些用处。

你将不得不用一些   替换 \t html 实体或一些 css 装饰。

于 2013-09-25T10:09:01.827 回答
0

我建议更改file_exists()is_file,然后建议您file_get_contents将其移至,然后将值放入变量中,例如

$contents=file_get_contents("downloaded2/PisaTower/$entry.exif.txt");

这样您就不必一直从磁盘(或网络)读取

那我建议

$lines=explode(' : ',$contents);
foreach($lines as $line)
{
   echo $line."\n<br>";
}

"请注意,我在回声末尾使用了双引号。这允许\n解析换行符。

于 2013-09-25T13:48:28.773 回答