PHP转换CSV到系列化阵列

问题描述 投票:0回答:1

我有2列,ID和密钥的CSV文件。提取物是...

26,"test1
test2
test3
"
54,"test34
test52
test673
"
67,"test1
test2a
test333
"

我试图加载此文件到PHP和第二场(密钥)转换成串行化阵列,我有这个迄今为止...

$filename = 'myfile.csv';

if (($h = fopen("{$filename}", "r")) !== FALSE) {

    while (($data = fgetcsv($h, 1000, ",")) !== FALSE) {

      var_dump($data[1]);

    }

    fclose($h);

}

我现在通过$数据线试图环[1]将它们转换成一个数组,但是当我做的var_dump新线似乎有disapeard。 am我处理这个正确的方式?

php arrays csv serialization
1个回答
1
投票

不知道你在这里序列化阵列意味着什么,但我想你想使你的key是在像下面一行。让我知道如果我错了。所以让我们尝试这样way-

<?php
$fp = fopen('file.csv', 'r');
$csvArray = array();
while ($row = fgetcsv($fp)) {
    $csvArray[$row[0]] = preg_replace("/[\r\n]/"," ",$row[1]);
}

fclose($fp);
print_r($csvArray);
?>

输出:

Array
(
 [26] => test1 test2 test3 
 [54] => test34 test52 test673 
 [67] => test1 test2a test333 
)
© www.soinside.com 2019 - 2024. All rights reserved.