В настоящее время я вставляю скриншоты (через текстовый редактор) в базу данных, и поэтому строка, которая вставляется в БД, выглядит следующим образом:
<img src="data:image/png;base64, [BASE64 STRING]" alt="">
Я пытаюсь раздеть <img src=" and " "alt="">
так что я просто остался с data:image/png;base64, [BASE64 STRING]
так что я могу манипулировать, как изображение будет отображаться на другом конце.
К сожалению, изображения должны быть вставлены в виде скриншота через текстовую область, поэтому выгрузка изображений / сохранение их в другом месте и сохранение места не вариант.
Возможно ли удалить все, кроме данных base64, до вставки БД или при получении изображения, если нет?
До сих пор я играл с preg_replace и strip_tags, похожими на приведенные ниже, но безрезультатно.
echo preg_replace('/<(\s*)img[^<>]*>/i', '', $screenshot);
echo strip_tags($screenshot, '<img>');
так далее
где $ screenshot — это запрос для извлечения всей строки из базы данных.
В конечном счете, я хочу иметь возможность отображать изображение во всплывающем окне или аналогичном, и для этого мне нужен необработанный грим для изображений base64, однако при вставке снимка экрана в текстовое поле (с текстовым редактором) теги уже включены и поэтому передаются в дБ.
Любая помощь или руководство будут с благодарностью!
использование preg_match
, это регулярное выражение возьмет SRC.
$img = '<img src="data:data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" alt="">';
preg_match('/< *img[^>]*src *= *["\']?([^"\']*)/i', $img, $matches);
var_dump($matches);
array(2) {
[0]=>
string(325) "<img src="data:data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7"[1]=>
string(315) "data:data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7"}
Других решений пока нет …