我被困在将Excel文件转换为PHP数组。我需要将数据插入SQL数据库中的表。
答案 0 :(得分:1)
一种简单的方法是将excel文件转换为易于阅读的格式,如CSV文件。为此,请在Excel中打开文件并将其导出为CSV文件。
之后,您将能够使用fopen()
和fgetcsv()
在PHP中阅读它,以使用常规SQL访问命令插入它们。
附加功能:
由于CSV文件是这样的,
"Text field",12,45,87.32,"Another text field"
"I am another row",43,12,98.2,"And another text field"
如果您确保您的数据在任何可能的注入尝试中都是安全的,您可以使用基本的字符串操作来生成SQL语句以及普通的fread()
:
$sql = 'INSERT INTO `MyTable` VALUES('.$fileRow.')';
这将是这样的:
INSERT INTO `MyTable` VALUES("Text field",12,45,87.32,"Another text field")
INSERT INTO `MyTable` VALUES("I am another row",43,12,98.2,"And another text field")
示例(未经测试)脚本:
$file = fopen('data.csv', 'r');
while( ($line = fread($file)) !== false ) {
$sql = 'INSERT INTO `MyTable` VALUES('.$line.')';
// Do something here, like a PDO query or whatever you use
}