如何将xls转换为mysql?

时间:2015-10-15 02:44:58

标签: php mysql csv silverstripe

如何使用PHP将大型xls或csv数据集转换为mysql数据,最好使用Silverstripe API?我可以直接执行此操作,还是需要先转换为文本?

2 个答案:

答案 0 :(得分:5)

SilverStripe有多种方法可将CSV文件导入数据模型。

本节的文档值得一读: https://docs.silverstripe.org/en/3.1/developer_guides/integration/csv_import/

最快捷,最简单的方法是使用DataObject界面管理自定义ModelAdmin并使用内置的CSV导入程序。

class PlayerAdmin extends ModelAdmin {
    private static $managed_models = array(
        'Player'
    );
    private static $url_segment = 'players';
}

当您转到播放器ModelAdmin时,您会在左侧看到CSV导入表单。确保CSV文件中的列标题与数据对象的变量名称对齐。

对于更复杂的导入方法,请阅读文档以了解允许您执行此操作的替代方法。

答案 1 :(得分:1)

Example #1 Read and print the entire contents of a CSV file
<?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?>