0

テキストファイルから文字列を分割したい。

.txt ファイルがどこかから読み取られた場合。ファイルを読み込んで文字列を配列で取得したい。

テキストファイルには次のデータがあります

aaa  1111111,
    2hajakka,
    87uj5687,
     F2tryty   
bbb  45454545,
    rereer,
    87uj5687,
     4343343,
    944dsdds

行を配列に格納したい

$arr = array(
"aaa 1111111, 2hajakka, 87uj5687, F2tryty ",
"bbb 45454545, rereer, 87uj5687, 4343343, 944dsdds");

注:
データは名前として最初の行で始まり、(aaa,bbb) データはカンマで区切られています。コンマが行にない場合、次の配列フィールドに移動します

前もって感謝します

4

2 に答える 2

1

あなたがやろうとしていることは非常に簡単です:

  1. 複数行のレコードを 1 行にまとめる
  2. 行を配列に分割する

かなり:

<?php
$string = 'aaa  1111111,
    2hajakka,
    87uj5687,
     F2tryty   
bbb  45454545,
    rereer,
    87uj5687,
     4343343,
    944dsdds';

// move lines beginning with a space to the previous line
$string = preg_replace('#\n +#', ' ', $string);
// split lines into array
$array = explode("\n", $string);
var_dump($array);
于 2012-03-03T12:21:13.077 に答える
0
$file_handle = fopen("myfile.txt", "r");
$arr[] = "";
$i = 0;
$temp_string = '';

while (!feof($file_handle)) {
$line = fgets($file_handle);
if(strpos($line,",")!== false)
{
$temp_string = $temp_string.$line;}
else{
$temp_string = $temp_string.$line;  
$arr[$i] = $temp_string;
$temp_string = '';
$i++;}
}
于 2012-03-03T12:34:19.290 に答える