如何转换xls成mysql?

How to convert xls to mysql?

如何使用 PHP 并且最好使用 Silverstripe API 将大型 xls 或 csv 数据集转换为 mysql 数据?我可以直接这样做还是需要先转换为文本?

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);
}
?>

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

该部分的文档值得一读: https://docs.silverstripe.org/en/3.1/developer_guides/integration/csv_import/

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

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

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

对于更复杂的导入方法,请阅读允许您这样做的替代方法的文档。