Как проверить строку из базы данных, если это URL с использованием PHP?

0

им проблема. У меня есть поле в моей базе данных, где пользователь может поместить URL-адрес facebook. Мне нужно проверить, являются ли данные URL-адресом, проанализируйте его и просто верните имя пользователя после/в URL-адресе.

Пример:

если в базе данных указано https://www.facebook.com/username только имя пользователя, если указано на www.facebook.com/username, если указано только имя пользователя, просто укажите имя пользователя

я пробовал это следующим образом:

$url = $facebook;


if (strpos($url,'https://') == true){
$facebook = str_replace('https://', '', $url ); 
$facebook = substr(strrchr($url, '/'), 1);

}
else
{
$facebook = $facebook;
}
  • 0
    Вы также можете использовать explode() и end() -> $facebook = end(explode('/',$facebook));
Теги:

1 ответ

1
Лучший ответ

Вам нужно будет использовать регулярное выражение:

$username = preg_replace("/.*\//", "", $url);

Период соответствует любому символу, а звезда выполняет "жадное соответствие" для предшествующего символа, что означает, что он сохраняет совпадение, пока он продолжает удовлетворять шаблону. Обратная косая черта сбрасывает косую черту и позволяет использовать ее в качестве совпадающего символа. На простом английском языке шаблон сопоставляет все до последней косой черты на линии и останавливается, а затем заменяет его "".

  • 0
    спасибо, что сработало

Ещё вопросы

Сообщество Overcoder
Наверх
Меню