我有一个脚本,它从 csv 导入数据并从导入到 sql 表中的数据创建变量。一切正常,但错误日志因未定义偏移错误而变得疯狂。
从我读过的内容来看,它只找到索引 [0],所以其他任何人都会抛出错误。
我查看了以下内容,但似乎无法让建议起作用:
PHP:“注意:未定义变量”、“注意:未定义索引”和“注意:未定义偏移”
PHP 注意:从 .csv 导入时出现未定义的偏移错误等等...
这是代码:
$filename='XXXXX_'.$today.'.csv';
$url=$proto.$user.':'.$pass.'@'.$server.$path.$filename;
$csv_data=file_get_contents($url);
foreach(preg_split("/((\r?\n)|(\r\n?))/", $csv_data) as $line){
list($type, $id, $ref) = explode(',', $line);
错误是在“list”和“explode”代码行上生成的。
抱歉,对此很陌生,已经阅读了多篇关于“为什么”没有找到修复程序的文章,这是我填充错误日志的唯一错误类型。任何帮助将非常感激。
您爆炸必须返回至少 3 个输出,如果该行中存在少于 3 个项目,则会显示错误。对于这种情况,您可以使用:
$lineData = explode(','$line);
$type = isset($lineData[0]) ? $lineData[0] : null;
$id = isset($lineData[1]) ? $lineData[1] : null;
$ref = isset($lineData[2]) ? $lineData[2] : null;
或使用:
@list($type, $id, $ref) = explode(',', $line);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句