Я использовал xvi32 (шестнадцатеричный редактор) для сравнения локальных оригиналов файлов с версиями, загруженными из полей BLOB / LONGBLOB. Кажется, что добавляются дополнительные байты, которые, я думаю, представляют собой CRLF, насколько я могу понять, когда Windows записывает файл. Это не является проблемой для некоторых графических форматов, которые в некоторой степени отказоустойчивы, но файлы офисного формата XML повреждены этими дополнительными данными.
Я пытался использовать ob_clean () и ob_flush () [то есть в php] перед печатью / отображением содержимого файла, но все еще поврежден в отношении Office.
Я знаю, что это старая ветка, но я был бы признателен за любые решения, которые кто-либо мог найти с момента последнего обновления.