次のような .txt ファイルがあります。
Test = 10849831 = August 6, 2013:
56cake = 0 = August 6, 2013:
Wwe = 812986192 = August 6, 2013:
Test = 346192 = August 9, 2013:
次に、次の PHP コードを使用します...
$Output = array();
$Lines = explode(":", $txt);
foreach($Lines as $line) {
$Rows = array_map('trim', explode(" = ", $line));
if(!isset($Rows[0], $Rows[1], $Rows[2])) continue;
$Output[$Rows[0]] = array($Rows[1], $Rows[2]);
}
print_r($Output);
....txt ファイルを次のような多次元配列に変換するには:
Array
(
[Test] => Array
(
[0] => 346192
[1] => August 9, 2013
)
[56cake] => Array
(
[0] => 0
[1] => August 6, 2013
)
[Wwe] => Array
(
[0] => 812986192
[1] => August 6, 2013
)
)
ただし、大きなエラーがあります。このコードは、重複するデータ値をすべて削除します。サンプルの txt ファイルでは、"Test" という名前の値が 2 つありましたが、コードは多次元配列に 1 つしか出力しません。
また、コードが最初の "Test" 要素 (多次元配列内) のデータを最新のもの (.txt ファイルの最後の行) にどのように置き換えたかにも注意してください。
配列内の最初の「Test」要素のデータは、.txt ファイルの最初の行のデータとさえ一致しませんTest = 10849831 = August 6, 2013:
。
この問題を解決するにはどうすればよいですか? 多次元配列を次のようにしたい:
Array
(
[Test] => Array
(
[0] => 10849831
[1] => August 6, 2013
)
[56cake] => Array
(
[0] => 0
[1] => August 6, 2013
)
[Wwe] => Array
(
[0] => 812986192
[1] => August 6, 2013
)
[Test] => Array
(
[0] => 346192
[1] => August 9, 2013
)
)