Разбор Adf.ly URL с использованием PHP
У меня есть такая ссылка:http://adf.ly/2323070/http://www.fileflyer.com/view/O33TOYUAFMIFF
И я хочу получить только эту часть URL:http://www.fileflyer.com/view/O33TOYUAFMIFF
Примечание. Номер URL можно изменить, поэтому синтаксис URL:http://adf.ly/{NUMBERS}/{URL}
Как я могу разобрать этот URL?
Спасибо! и извините за мой английский
2 ответа
Решение
Простое регулярное выражение #https?://(www\.)?adf\.ly/\d+/(.*)#i
должен сделать свое дело. Это также поддерживает https://adf.ly` (если он существует) и http://www.adf.ly.
<?php
$url = "http://"."adf.ly/2323070/http://www.fileflyer.com/view/O33TOYUAFMIFF";
preg_match("#https?://(www\.)?adf\.ly/\d+/(.*)#i", $url, $matches);
var_dump($matches[2]);
?>
выходы
string(43) "http://www.fileflyer.com/view/O33TOYUAFMIFF"
Регулярное выражение типа #http://adf.ly/(\d+)/(.*)#i
должен сделать свое дело. Например:
<?php
$theinput = 'http://adf.ly/2323070/http://www.fileflyer.com/view/O33TOYUAFMIFF';
$regexp = '#http://adf.ly/(\d+)/(.*)#i';
if (preg_match($regexp, $theinput, $matches)) {
echo "Number: " . $matches[1] . "<br>\n";
echo "URL: " . $matches[2] . "<br>\n";
}
else {
echo "No match!";
}