这是对array_map如何工作的误解(文档中的语言相当混乱)。取给定的片段:$csv = array_map('str_getcsv', file($file), array($delimiter, '"', "\\"));这在功能上类似于执行以下操作:str_getcsv('line one of $file', $delimiter);str_getcsv('line two of $file', '"');str_getcsv('line three of $file', "\\");这就是为什么第一行似乎有效的原因,因为分隔符是正确的,但后续的却没有,因为第二个参数在 CSV 的上下文中不正确。