我正在尝试上传CSV文件并将其内容放入数组中,但我收到此错误:( 10行后每行的错误倍数)
Notice: Undefined offset: 1 in C:\xampp\htdocs\amazon\upload_file.php on line 10
以下是我的代码示例:
if ($handle = file_get_contents($_FILES["file"]["tmp_name"])) {
$data = array();
while ($csv = array(file_get_contents($_FILES["file"]["tmp_name"]))) {
$data = array(
'order-id' => $csv[0],
'order-item-id' => $csv[1], //This is line 10.
'purchase-date' => $csv[2],
'payments-date' => $csv[3],
答案 0 :(得分:2)
file()
打开将每个作为数组元素。在处理csv文件时,fgetcsv()
及其函数族非常有用。
您的代码array(file_get_contents($_FILES["file"]["tmp_name"]))
将只有一个元素,因为file_get_contents返回一个字符串。
答案 1 :(得分:1)
我想你需要这样做。
$row = explode(",", $csv[0]);
$data = array(
'order-id' => $fileArray[0],
'order-item-id' => $row[1], //This is line 10.
'purchase-date' => $row[2],
'payments-date' => $row[3]
);
此外,您可以使用fgetcsv()
等功能来解析您的CSV文件。