2012-05-07 2 views
0

これはおそらくおかしいばかげた質問ですが、私はPHPを学んでいます。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からの各キーを使用して、私は、文字列内の各スペースで各文字列を爆発別の配列$ ArrayResultsを作成したいです。これにより、各文字列の各部分を別々に処理する必要があります。

私はこれがうまくいきたいと思っています。私はおそらく正しい方法で質問をしなかったので、謝罪します。

ありがとうございました。

答えて

4

このファイルを開きます。配列$ resArrayからの各キーで

file()

に各ラインを入れて、私は、文字列内の各スペースで

explode()を各文字列を爆発別の配列$ ArrayResultsを作成したいです

このようになります。

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

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

ありがとうございます。これにより、ファイル処理に関する知識が向上します。 – user1338194

1

まず、ファイルの内容を取得し、変数contentsに入れます。 (Windowsマシンにしている場合や\r\n

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

次は、改行文字\n上のコンテンツを分割します。

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

最後に、配列をループして、スペース文字の各値を分割します。

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

私はそれがあなたが探していることを望みます。

+0

本当に感謝しています。 – user1338194

1

あなたはexplode()を見たいかもしれませんが、それはhereです。乾杯。

関連する問題