用逗号和换行符分解文本文件


Exploding a text file with commas and newlines

如果我有一个文本文件:

Ramon,19,Libra   
Renata,25,Aries   
Roxy,52,Leo

如果我要创建一个数组:

print_r(explode(",", $str));

我该如何解释换行符?

取决于您想要什么,但请尝试file():

$lines = file('/path/to/file.txt');
foreach($lines as $line) {
    $data[] = explode(',', $line);
}
print_r($data);

另一个好方法是使用str_getcsv

foreach(file('/path/to/file.txt') as $line) {
    $data[] = str_getcsv($line);
}
var_dump($data);

返回:

Array
(
    [0] => Array
        (
            [0] => Ramon
            [1] => 19
            [2] => Libra
        )
    [1] => Array
        (
            [0] => Renata
            [1] => 25
            [2] => Aries
        )
    [2] => Array
        (
            [0] => Roxy
            [1] => 52
            [2] => Leo
        )
)

或者您可以使用fgetcsv函数

这只是的另一种方法

$filestring = file_get_contents('...path to file...');
$lines = explode(PHP_EOL,$filestring);
foreach($lines as $line) {
     $data[] = explode(',', $line);
}
print_r($data);