将嵌套的PHP数组导出为CSV

时间:2017-04-11 07:18:06

标签: php arrays csv

我想将此结构导出为CSV:

Array
(
    [0] => Array
        (
            [id] => 935722507
            [resource_state] => 2
            [athlete] => Array
                (
                    [id] => 21061939
                    [resource_state] => 1
                )

            [name] => Moon Run
            [start_latlng] => Array
                (
                    [0] => 45.73
                    [1] => 4.82
                )
        )
    [1] => Array
        (
            [id] => 935722508
            [resource_state] => 2
            [athlete] => Array
                (
                    [id] => 21061939
                    [resource_state] => 1
                )

            [name] => Evening Run
            [start_latlng] => Array
            (
                [0] => 45.73
                [1] => 4.82
            )
         )    
)

我需要一个递归方法来导出带有这些标题的文件:

id; resource_state; athlete.id; athlete.resource_state; name; start_latlng.0; start_latlng.1...

你知道一个PHP库吗?

由于

1 个答案:

答案 0 :(得分:1)

为了导出到CSV,您需要“平面”数据 - 这意味着一个数组内部只有一个级别的列。首先,创建一个数组,其中的键与您在问题中显示的CSV字段相匹配。

获得数组后,使用PHP中的fputcsv()函数将每行写入文件(请注意,您需要手动编写标题行)。