2012-09-01 35 views
3

我有用戶和他們 將被保存網址的唯一性statstical目的

數據庫把鏈接爲Facebook的網址可能是這樣

www.facebook.com
http://facebook.com
https://facebook.com
facebook.com
http://www.facebook.com
https://www.facebook.com

不過,雖然呈現出整體的統計Facebook的我該如何查詢所有在同一時間 或者是有沒有辦法保存在數據庫中的URL

+1

你可不可以'SELECT' ...'WHERE link_url LIKE'%facebook.com%''? – Havelock

回答

3

您可以在數據庫中,你存儲數據的兩片方案對於每個網址 - 文字網址和標準網址。你所做的是你存儲URL的方式(上面列出的變體),但是使用正則表達式,你可以將其修改爲像facebook.com之類的東西並將其存儲在數據庫中。

現在,您可以通過搜索facebook.com查找所有Facebook網址,但您也知道每個條目最初是如何輸入的。

+0

真棒。我如何處理這些類型的網址與正則表達式1.something.gov.uk www.something.com都有兩個點,但政府不是子域但第三級域 – ZenOut

+0

我不得不考慮這一點,但它似乎適合作爲自己的問題。這樣你可以從不同的人那裏得到更多的反饋 – hbhakhra

0

雖然計算特定的URL的出現的次數,你可以使用parse_url

〜僞代碼:

<?php 
//Store all url variations from table 
//in $all_urls (indexed array) 
$fb_count = 0; 
for($i=0;$i<count($all_urls);$i++){ 
    $url = parse_url($all_urls[$i]); 
    if($url[host] == "facebook.com") 
     $fb_count++; 
} 
//Now do something/anything-you-want with $fb_count 
?> 

的代碼可以更具體,如果你添加相關的代碼由您正在從表中提取數據。