, оказывается, я схожу с ума, не зная, как решить эту проблему. Я проверил несколько функций проверки base64, чтобы определить, является ли строка base64 или путь к файлу.Чтобы определить, является ли строка base64 или каталогом
$path='/img/2015/desert-and-34.jpg';
function itsBase64($data){
if (base64_encode(base64_decode($data)) === $data){
return true;
} else {
return false;
}
}
itsBase64($path);
В результате неопределенными, я не знаю, почему.
Возможно, ответ слишком очевиден, но я часами вращался, не зная, почему проверка не окажется ложной. может ли кто-нибудь дать мне руку?
EDIT:
Похоже, что функция работает нормально, но я путает себя с проверкой. Проблема в том, что он не обнаруживает, что строка является образ base64 и возвращает false.
То есть, маршрут обнаруживает его как ложное, а также определяет его как ложное, если он проходит строку файла base64.
Я не понимаю, почему проверка не пройдена, должно работать, base64 имеет такую структуру:
$path='data:image/jpeg;base64,/9j/4AAQSkZJRgAB...
Base64 был создан с использованием холст в JavaScript.
Почему бы вам не признать его base64?
Я сделал немного выдумки, чтобы уйти с дороги, надеюсь, кто-то может дать мне руку.
if(substr($image, 0,11) === 'data:image/'){
$imageWidth = getimagesize($image);
$image1->base64_to_file($image, $DestJPG);
}
Очень распущенный решение ...
Извините, я забыл упомянуть, что неопределенная ставит его в отчете – PlayerWet
ошибок РНР Результат является ложным, но странно то, что я изменить путь для base64 и все еще дает мне ложь, разве это не странно? – PlayerWet
My base64 создается с использованием Javascript canvas с этим типом структуры: данные: image/jpeg; base64,/9j/4AAQSkZJRgABAQAAAQABAAD .... – PlayerWet