Что не так с функцией отправки почты?

Эдди

Новичок
Функцию писал лет 5 или 7 назад. В любом месте работала и работает прекрасно.
А сейчас обнаружил, что в одном только файле дает в теме кракозябры.
Грешу на то, что это не чисто html файл. Там нет не body, ни head, ни кодировок.
Это скрипт, который принимает болшой массив данных из формы, вставляет их в БД, отправляет почту, что кто-то обновил информацию и возвращается в файл с формой.
Или, может, функция устарела?
Код:
<?//ОТПРАВКА ЭЛЕКТРОННЫХ ИНФОРМАЦИОННЫХ ПИСЕМ в формате обычного текста или html
function mail_send($mailto, //адрес получателя
                    $subject, //тема письма
                    $mail, //тело письма
                    $mailfrom, //адрес отправителя
                    $mailcopy='', //копия получателю
                    $format='plain' //обычный текст или html (plain, html)
                  )
{
  //Если переданы основные данные
  if(!empty($mailto) AND !empty($mail))
  {
    //Проверяем формат письма
    $f=($format=='plain'?'plain':'html');
    //Отправляем письмо по указанному адресу в текстовом формате
    $headers="MIME-Version: 1.0\r\n";
    $headers.="Content-Type: text/$f; charset=utf-8\r\n";
    $headers.="From: $mailfrom\r\n";
    $headers.="Bcc: $mailcopy\r\n";
    $subject="=?UTF-8?B?".base64_encode($subject)."?=";
    if(mail($mailto,$subject,$mail,$headers))
      return true;
  }
}?>
 

Эдди

Новичок
Сверху