У меня есть URL-адрес, который поступает из базы данных следующим образом.Как очистить URL-адрес, поступающий из базы данных в PHP?
http://34.158.85.145/file/pic/user/2014/11/d424bc46529b9f8d764b6b485e6c8716%s.png
Теперь, если вы внимательно посмотрите на изображение, некоторые специальные символы встают в его имя. Я хочу избежать этого, поэтому я написал для него следующую логику, но это не сработало.
$user_image = Slug('http://34.158.85.145/file/pic/user/2014/11/d424bc46529b9f8d764b6b485e6c8716%s.png');
function Slug($string) {
return strtolower(trim(preg_replace('~[^0-9a-z]+~i', '-', html_entity_decode(preg_replace('~&([a-z]{1,2})(?:acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml);~i', '$1', htmlentities($string, ENT_QUOTES, 'UTF-8')), ENT_QUOTES, 'UTF-8')), '-'));
}
Может кто-нибудь, пожалуйста, помогите мне в очистке этого изображения от имени на PHP?
Заранее спасибо.
Что должно быть имя файла, все, что я могу видеть добавил это «% s» в конце имени файла, что не является чем-то, что я ожидаю увидеть добавленным в имя файла. Его больше похоже на спецификатор формата, который не передан в sprintf() –
. Думаю, ваша главная проблема - не допустить, чтобы эти имена были вставлены в db на первом месте. –