Я знаю fputcsv, но согласно эта ошибка "wontfix" fputcsv не выполняет корректный вывод, и его поведение не будет исправлено по соображениям совместимости. Я предпочел бы реализацию, совместимую с RFC 4180, поэтому Excel и LibreOffice могут открывать ее во всех случаях.
Я пробовал поиск в Интернете для библиотеки, которая делает это правильно, но, похоже, нет консенсуса относительно приличной сторонней библиотеки, вместо этого обычно предлагая дефектный fputcsv. Я всегда мог катиться самостоятельно, но я бы предпочел не изобретать колесо, если это вообще возможно.