2009-08-26 247 views
2

如何读取文本文件并将每行读入数组?将文本文件转换为数组?

我发现这个代码,这样做,有点,但寻找一个=标志,我需要寻找一个新的生产线:

<?PHP 
$file_handle = fopen("dictionary.txt", "rb"); 
while (!feof($file_handle)) { 
    $line_of_text = fgets($file_handle); 
    $parts = explode('=', $line_of_text); 
    print $parts[0] . $parts[1]. "<BR>"; 
} 
fclose($file_handle); 
?> 
+0

@jasondavis - 你为什么要这么做?只需使用'文件' – karim79 2009-08-26 23:49:59

回答

8

好吧,你可以只用一个"\n"如果更换'='唯一的区别是你正在寻找换行符。

然而,一个更直接的方法是使用file()功能:

$lines = file("dictionary.txt"); 

这一切就是这么简单!

0

因此,使用字符换行,而不是“= '

'\n' 
0

不是使用'=',而是使用'\ n'。

实施例(也去掉“\ R”字符,其中使用“\ r \ n”作为其行定界符文件):

<?PHP 
$file_handle = fopen("dictionary.txt", "rb"); 
while (!feof($file_handle)) { 
$line_of_text = fgets($file_handle); 
$line_of_text = str_replace('\r', '', $line_of_text); 
$parts = explode('\n', $line_of_text); 
print $parts[0] . $parts[1]. "<BR>"; 
} 
fclose($file_handle); 
?> 

注意:此代码示例将不会上的文件,其使用工作'\ r'自己指定换行符。

5

使用PHP的file功能:

文件 - 把整个文件读入一个数组

例子:

$lines = file('dictionary.txt'); 
echo $lines[0]; //echo the first line 
+0

@卡里姆:你必须出售它。从函数的文档中:“将整个文件读入数组。” – Telemachus 2009-08-26 23:46:44

+0

@Telemachus - 我意识到这一点,这是我使用'编辑'。 – karim79 2009-08-26 23:48:31

+0

@卡林姆:够公平的(我在开玩笑 - 只是我说“这看起来像我的答案......”)。 – Telemachus 2009-08-26 23:49:38