如何告诉explode忽略换行?

时间:2010-07-16 08:24:49

标签: php explode

我已经写了一些小代码来阅读平面文本文件并显示它。我的问题是其中一个字段中有很多文本,还有一些行返回。我的代码使用行返回是分隔符并移动到下一条记录。

我怎么能告诉它只用分隔符拆分并忽略换行?

我正在使用的示例代码:

$delimiter = chr(1);

$fp = fopen('app2','r');
if (!$fp) {echo 'ERROR: Unable to open file.</table></body></html>'; exit;}

$loop = 0;
while (!feof($fp)) {
  $loop++;
    $line = fgets($fp,2048); //use 2048 if very long lines
    $field[$loop] = explode ($delimiter, $line);
    echo '
<tr>
<td>'.$field[$loop][0].'</td>
<td>'.$field[$loop][1].'</td>
<td>'.$field[$loop][2].'</td>
<td>'.$field[$loop][3].'</td>
<td>'.$field[$loop][4].'</td>
<td>'.$field[$loop][5].'</td>
<td>'.$field[$loop][6].'</td>
<td>'.$field[$loop][7].'</td>
<td>'.$field[$loop][8].'</td>
<td>'.$field[$loop][9].'</td>
<td>'.$field[$loop][10].'</td>
<td>'.$field[$loop][11].'</td>
<td>'.$field[$loop][12].'</td>
<td>'.$field[$loop][13].'</td>
<td>'.$field[$loop][14].'</td>
<td>'.$field[$loop][15].'</td>
<td>'.$field[$loop][16].'</td>

</tr>';
    $fp++;
}

fclose($fp);
?> 

你可以看到它在这里做了什么http://www.smartphonesoft.com/fred/xmlfeed/test/itunes_to_mysql.php

1 个答案:

答案 0 :(得分:0)

您可以将文本文件粘贴到一个$var中,只要文件不是2GB大,就可以将所有内容添加到.=

  

注意:字符串可以大到2GB。