【发布时间】:2015-07-24 14:23:51
【问题描述】:
我有这个 CSV 文件:
german,6357787,hombre;
patricia,666565656,mujer;
还有这个 PHP 处理器:
if((!empty($_FILES["csv1"])) && ($_FILES['csv1']['error'] == 0)) {
//CHECK NOMBRE
$filename = basename($_FILES['csv1']['name']);
// CHECK EXTENSIÓN
$ext = substr($filename, strrpos($filename, '.') + 1);
//CHECK FORMATO & MIMETYPE
if (
(
($ext == "csv")
) && (
(in_array($_FILES['csv1']['type'],$mimes))
)
) {
//ANALISIS
$csv=$_FILES['csv1']['tmp_name'];
$file_handle = fopen($csv, "r");
while (!feof($file_handle) ) {
$line_of_text = fgets($file_handle);
$parts = explode(';', $line_of_text);
echo $parts[0] . $parts[1]. "<BR>";
}
fclose($file_handle);
} else {
echo "No se ha adjuntado el archivo CSV. <br>Formato no reconocido";
}
} else {
echo "No se ha adjuntado el archivo CSV. <br>El archivo no existe.";
}
当我将我的 CSV 发送到处理器时,它会回显正确的信息 (german,6351787,hombre<BR>patricia,666565656,mujer<BR>),但在此回显下,它也会生成错误
注意:未定义的偏移量:1
如果我的文件有两条记录,并且它回显数组大小为 2,为什么 $parts[1] 会生成错误?
【问题讨论】:
-
添加一些检查密钥是否存在。
-
你确定 $parts 包含 2 个元素吗?
-
不是2行的时候吗?
标签: php parsing csv file-upload