Я же просто пишу пример, для единичного файла, а вы загружаете массив файлов, поэтому надо:
$filename = basename($_FILES['fileFF']['name'][$i]);
В сети ищите темы типа "как правильно загружать файлы" и подобное, там прочтете для чего это делается. Эта функция не усложняет, а помогает, просто не знаете вы языка, если копируете, а не понимаете.
Ошибка
"syntax error, unexpected $end" гласит о том, что не закрыта конструкция, то есть, нет или лишняя фигурная скобка. Вы просто вырвали кусок кода из примера и вставили его себе, и конечно у вас нет закрывающих скобок, поэтому и ошибка. Должно быть так:
if(!$e = array_diff($_FILES['fileFF']['error'], array(0))) {
if(($size = array_sum(array_column($_FILES['fileFF'], 'size'))) < $sizemail) {
//формирование почтового отправления, то есть
//$to = "@gmail.com"; // поменять на свой электронный адрес
//$from = $_POST['contactFF'];
//и так далее
for($i=0;$i<count($_FILES['fileFF']['name']);$i++) {
if(is_uploaded_file($_FILES['fileFF']['tmp_name'][$i])) {
//добавление файлов к почте, то есть заполнение $attachment и т.д.
} else {
//подстава - файл левый, прекращаем работу скрипта
exit('Да и идите вы ...');
}
}
} else {
//формируем информацию о превышении размера файлов разрешенных для загруки
//то есть если их размер превышает размер $sizemail разрешенный для отправкой почтой
//$size - содержит размер всех загруженных файлов
}
} else {
//формируем информацию об ошибках загрузки файлов для пользователя
//ключи массива $e будут указывать на файлы загруженные с ошибками
}
А пользовательская функция arrayColumn() нужна только в том случае, если у вас версия РНР ниже 5.5.0 (ориентироваться надо не на локальный сервер, а реальный, тот что будет, устанавливая на локальном такую же версию, в Open Server это сделать легко), то есть так:
arrayColumn($_FILES['fileFF'], 'size')
вместо
array_column($_FILES['fileFF'], 'size')
при этом поместить ее не в этот скрипт отправки почты, а в подключаемый файл пользовательских функций, она не раз пригодится еще,
о ее назначении тут.
Иначе эта функция не нужна, и нужно использовать стандартную array_column().