Добавление спецификации в файл CSV с помощью fputcsv

У меня есть простой генерируемый файл CSV, который включает в себя иностранные символы. Я заметил, что если я не включу Порядок следования байтов, то внешние символы не будут правильно отображаться в Excel (но они выглядят нормально, когда присутствует спецификация).

Как добавить спецификацию в начало файла при его первом создании? Я пробовал следующее, и это не работает: - /

function processForm($competition, $competitionEntry) {
    $BOM = "\xEF\xBB\xBF"; // UTF-8 BOM

    $filename = $competition->ID.".csv";
    $file = "entries/".$filename;     

    $fields = array_keys($competitionEntry);
    $submittedForm = $competitionEntry;

    if(file_exists($file)) {
        $fp = fopen($file, 'a');
        if($fp && 
            fputcsv($fp, $submittedForm) && 
            fclose($fp)) {
            return true;
        } 
    } else { // CREATE NEW FILE
        $fp = fopen($file, 'w');
        if($fp && 
            fputcsv($fp, $BOM) && // WRITE BOM TO FILE   
            fputcsv($fp, $fields) &&
            fputcsv($fp, $submittedForm) &&
            fclose($fp)) {     
            return true;
        } 
    }
    return false;
}

Ответы на вопрос(1)

Ваш ответ на вопрос