2011-05-20 55 views
1

我有這個變量的變量$keywords副URL關鍵字分離

內容是用逗號或空格 例如分開的話:

$keywords= key1,key2,key3 

或者

$keywords=key1 key2 key3 

表我擁有的是:

 <table width="500" border="1"> 
    <tr> 
    <td height='auto'>Keywords: $keywords</td> 
    </tr> 
</table> 

我想在爆炸key1的密鑰2 KEY3 $keywords ... 和準每一個分開的字predifined網址:

http://miosite.com/search/label/key1 
http://miosite.com/search/label/key2 
http://miosite.com/search/label/key3 

所以我希望得到這樣的:

 <table width="500" border="1"> 
    <tr> 
    <td height='auto'>Keywords: key1,key2,key3</td> 
    </tr> 
</table> 

 key1=http://miosite.com/search/label/key1 
     key2=http://miosite.com/search/label/key2 
     key1=http://miosite.com/search/label/key3 

如何?

回答

1

你可以檢查爲逗號,以確定爆炸上的分隔符,然後重新組裝起來的字符串:

if (strpos($keywords,",") !== FALSE) { 
    $keys = explode(",",$keywords); 
} else { 
    $keys = explode(" ",$keywords); 
} 
$keywords = ""; 
foreach ($keys as $key) $keywords .= "http://miosite.com/search/" . $key . "<BR>"; 

編輯:顯然,目的是去除網站的地址,而不是將其添加沒有人知道這一點。新代碼:

if (strpos($keywords,",") !== FALSE) { 
    $keys = explode(",",$keywords); 
} else { 
    $keys = explode(" ",$keywords); 
} 
$keywords = ""; 
foreach ($keys as $key) $keywords .= str_ireplace("http://miosite.com/search/","",$key) . ","; 
$keywords = substr($keywords,0,strlen($keywords)-1); 

的hackish,但給這一個鏡頭。

編輯:哦,現在他們需要鏈接? LOL

if (strpos($keywords,",") !== FALSE) { 
    $keys = explode(",",$keywords); 
} else { 
    $keys = explode(" ",$keywords); 
} 
$keywords = ""; 
foreach ($keys as $key) { 
    $newkey = str_ireplace("http://miosite.com/search/","",$key); 
    $keywords .= "<a href=\"" . $key . "\">" . $newkey . "</a>,"; 
} 
$keywords = substr($keywords,0,strlen($keywords)-1); 

好了,嘗試了這一點。

+0

確定我已經試過你的代碼,但如何輸出我得到:關鍵字:http:// miosite/search/label/keyword1, http:// miosite/search/label/keyword2, http:// miosite/search/label/keyword3而不是keyword1,keyword2.keyword3和link不是林卡ble或active – grigione 2011-05-20 17:26:07

+0

@grigione增加了另一段代碼...我們都假設你是基於這個問題添加了url。 – Fosco 2011-05-20 17:30:59

+0

第二個代碼給我關鍵字:關鍵字1,關鍵字2,關鍵字3他們不是主動或可鏈接 – grigione 2011-05-20 17:41:40

0
$keywords = explode(',',$keywords); 
foreach($keywords as $key) echo("<a href=\"http://miosite.com/search/{$key}\">{$key}</a>"); 
0

關鍵詞:

$keywords = explode(',',$keywords); 
$tmpArray = array(); 
foreach($keywords as $key) { 
    $tmpArray[] = 'http://miosite.com/search/label/'.$key; 
} 

echo implode(",", $tmpArray); 
0

蔭剛通過HTML採取&內embeddg PHP rewrting是caommas你的鏈接之間:

<?php 
$keywords = 'key1 key2 key3'; 
$keywords = preg_split('/[, ]/',$keywords); 

foreach($keywords as $key) 
    $links[]= "<a href=http://miosite.com/search/{$key}\>{$key}</a>"; 
    print_r($links); 

$keywords = implode(',',$links); 

?> 

<table width="500" border="1"> 
    <tr> 
    <td height='auto'>Keywords: <?php echo $keywords ;?> 
</td> 
    </tr> 
</table>