Short URLS là những đường dẫn được rút ngắn lại cho dễ nhìn và gọn hơn như : http://adf.ly/17a3s hoặc http://goo.gl/JiBEXx …. Tuy nhiên, nếu như các bạn không muốn click vào những đường link này vì không biết URL thực sự của nó là gì, thì có thể dùng đoạn code mà mình chia sẻ trong bài viết này để có thể lấy được link thực sự của nó.
Rất đơn giản, các bạn chỉ cần copy function sau :
<?php
function ger_origenal_url($url)
{
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_HEADER,true); // Get header information
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION,false);
$header = curl_exec($ch);
$fields = explode("\r\n", preg_replace('/\x0D\x0A[\x09\x20]+/', ' ', $header)); // Parse information
for($i=0;$i<count($fields);$i++)
{
if(strpos($fields[$i],'Location') !== false)
{
$url = str_replace("Location: ","",$fields[$i]);
}
}
return $url;
}
?>
Trong đoạn code bên trên cURL sẽ chỉ trích xuất thông tin header giúp chúng ta lấy chính xác đường dẫn gốc của nó và chúng ta sẽ phân tích và hiển thị đường dẫn này. Và bây giờ, để chuyển đối, các bạn sử dụng như sau :
<?php
$url = "http://goo.gl/fb/37xzk"; // your short url
$original_url = ger_origenal_url($url); // Calling function with short url
echo "Short URL: {$url}<br/>"; // shoty URL
echo "Original URL: {$original_url}"; // Original URL
?>
Vậy là từ giờ chúng ta đã có thể kiểm tra xem link gốc thực sự của một short url là gì, và mình hy vọng là qua bài viết này, các bạn sẽ có thêm một kinh nghiệm trong việc lập trình bằng ngôn ngữ PHP.