php将文件的内容放入数组中,然后将此数组的每个字符串拆分为单独的数组

时间:2012-05-07 09:44:30

标签: php arrays

这可能是一个荒谬的问题,但我正在学习PHP,所以请尽可能帮助。

我有一个名为'res_example.txt'的文件,它看起来像这样:

>chr1:2198584545754_genome_1000+ 511 66 (+) nan full_model
>chr2:2198581212154_genome_1000+ 649 70 (+) nan full_model
>chr3:2115151215754_genome_1000+ 666 80 (+) nan full_model
>chr4:2198584545754_genome_1000+ 750 90 (+) nan full_model
>chr5:1218455145754_genome_1000+ 800 100 (+) nan full_model
>chr6:1231354645454_genome_1000+ 850 110 (+) nan full_model
>chr7:1231213211134_genome_1000+ 900 120 (+) nan full_model

我想打开这个文件。将每一行放入数组$ resArray中,因此每一行都是一个单独的字符串。 所以它会是这样的:

$resArray= array(' >chr1:2198584545754_genome_1000+ 511 66 (+) nan full_model',  '>chr2:2198581212154_genome_1000+ 649 70 (+) nan full_model')

然后使用$ resArray中的每个键,我想创建另一个Array $ ArrayResults,爆炸字符串中每个空格的每个字符串。这将使我分别处理每个字符串的每个部分。

我希望这是有道理的。我可能没有以正确的方式提出这个问题,所以道歉。

感谢您的帮助。

3 个答案:

答案 0 :(得分:4)

  

我想打开这个文件。将每一行放入数组

file()

  

使用$ resArray中的每个键,我想创建另一个Array $ ArrayResults爆炸字符串中每个空格的每个字符串

explode()

所以它会变成这样的东西:

$resArray = file('res_example.txt');
$resSplit = array();

foreach ($resArray as $res)
{
    $resSplit[] = explode(' ', $res);
}

答案 1 :(得分:1)

首先,获取文件的内容,并将它们放在变量contents

$f = fopen('filename.txt', 'r+');
$contents = fread($f, filesize("filename.txt"));
fclose($f);

接下来,拆分换行符\n上的内容(如果您在Windows计算机上,则为\r\n。)

$resArray = explode("\n",$contents);

最后,遍历数组以分割空格字符上的每个值。

foreach($resArray as $r) {
   $ArrayResults[] = explode(" ",$r);
}

我希望这就是你要找的东西。

答案 2 :(得分:1)

你可能想看看explode(),你可以找到它here。欢呼声。