Обычно текст в base64 не имеет пробелов.
Я использовал эту функцию, которая отлично работала для меня. Он проверяет, является ли количество пробелов в строке меньше 1 в 20.
например: по крайней мере 1 пробел на каждые 20 символов --- (пробелы / strlen) <0,05 </p>
function normalizaBase64($data){
$spaces = substr_count ( $data ," ");
if (($spaces/strlen($data))<0.05)
{
return base64_decode($data);
}
return $data;
}