将硬引号添加到列表字符串

时间:2011-07-26 19:28:24

标签: php string scripting string-formatting

假设我有一个包含字符串列表的文本文件

像这样:

434242019884
434244064888
434240746884
434241083881

使用PHP,用硬引号(')包裹回来的最有效方法是什么?

我只是好奇。

5 个答案:

答案 0 :(得分:2)

$lines = file('file.txt');
foreach($lines as $line){
    echo "'".$line."'<br />";
}

答案 1 :(得分:1)

<?php
  $fh = fopen("file.txt", "r");

  while(!feof($fh)) {
    $line = fgets($fh);
    echo "'".$line."'<br />";
  }

  fclose($fh);
?>

答案 2 :(得分:1)

这将正确打印您的数据,并将数组创建的换行符考虑在内。

  1. 获取文件内容。如果文件中有多行文本,它将创建一个数组,每行作为项目。

    $lines = file('datafile.txt', );
    
  2. 启动一个循环,将每个数组项放在一个变量中。

    foreach($lines as $line)    {
    
  3. 从字符串末尾修剪新行。 (\ x0A = \ n)

    $line = trim($line, "\x0A" );
    
  4. 回显字符串,在我们想要的地方添加换行符。

    echo "'".$line."'\n";
    
  5. 结束循环。

    }
    
  6. 这是一次性的:

    $lines = file('datafile.txt', );             
    foreach($lines as $line)    {
        $line = trim($line, "\x0A" );
        echo "'".$line."'\n";
    }
    

答案 3 :(得分:0)

怎么样:

echo "'" . str_replace(" ", "' '", $string) . "'";

编辑:我根据预编辑消息上显示的空格编写了代码..但您可以将str_replace中的空格更改为EOL

EDIT2:$ string实际上是整个字符串列表,btw

答案 4 :(得分:0)

这是你在单行中使用explode / implode函数的方法:

<?php
  echo "'".implode("'<br/>'", explode("\r\n", file_get_contents("file.txt")))."'";
?>

如果您的文件行除以“\ n”(Linux样式)而不是“\ r \ n”(Windows样式),则无法使用此功能,只需修复“\ r \ n”爆炸参数更改“ \ n”。
通过这种方式,您可以控制第一个和最后一个引号(如果您不想要最后一个&lt; br /&gt;)并且您可以中继到库函数。
我只是不知道与其他解决方案相比有多快。 编辑:做了一些测试,表现完美(也许比其他解决方案更快)。