0


0

PHPでテキストファイルを解析し、情報を取得する

PHPで基本的なテキストファイルを解析しようとしていますが、どこから始めればよいかわかりません。

ファイルには次のような情報が含まれています。

キャプチャする必要がある情報が新しい行で分割されていることに気付くでしょう。 今、私はすべての新しい行を$ applicant []配列に入れていますが、各行の先行するテキストを取り除く必要があります。

おそらく、必要なデータだけを抽出するために正規表現などを使用する必要があると考えていました。 アイデア?

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

2 Answer


1


正規表現を使用せずに、これを行うことができます:

$fp = fopen('textfile.txt', 'r');

$return = array();
while ($line = fgets($fp)) {
   $parts = explode(':', $line);
   $key = trim($parts[0]);
   unset($parts[0]);
   $value = str_replace("\n", '', implode(':', $parts));
   $return[$key] = trim($value);
}

print_r($return);

次のようなものを出力します:

Array (
  [Applicant SSN]  => 123456789
  [Applicant Name] => BOB, BOB
  ...
)


0


`strpos`を使用して:文字を見つけ、その後すべてを取得できます。 `trim`を使用して余分な空白を取り除くことができます。

$lines = file('textfile.txt');

foreach ($lines as $line) {
   $p = strpos($line, ':');
   if ($p!==false) {
      $key = trim(substr($line, 0, $p));
      $value = trim(substr($line, $p+1));

      // do whatever with your key & value

   }
}