我有一个如下所示的 .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”的值,但是代码仅在多维数组中输出一个。
您还可以注意到代码如何将第一个“Test”元素(在多维数组中)的数据替换为最新的(.txt 文件中的最后一行)。
数组中第一个“测试”元素的数据甚至与 .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
)
)