if (stripos($column_type, 'enum') !== false) {
    if ($row[$column_name] === null || $row[$column_name] === '') {
        $values[] = 'NULL';
    } else {
        $values[] = "'" . str_replace(array("\r", "\n"), array('\r', '\n'), $row[$column_name]) . "'";
    }
} else {
    $values[] = "'" . str_replace(array("\r", "\n"), array('\r', '\n'), $row[$column_name]) . "'";
}
    • 判断字段类型是否为 enum
    • 如果字段值为 null 或空字符串,则插入 NULL
    • 否则,正常插入值。

通过这种方式,可以确保 enum 类型的字段在值为 null 或空字符串时能够正确插入数据库。