
05-09-2011, 15:09:09
|
| |
Metin içindeki linkleri kısaltılmış url olarak değiştirme yardım ihtiyacı | | Merhabalar,
Hazırladığım sistemde regex teki eksikliğim sebebiyle tıkanmış durumdayım.
Amacım girilen bir içerikteki a tag i içinde yer alan adresleri ( Örn : <a href="adres"> metin </a> ) her birini ayrı ayrı kendi veritabanımda yaratacağım bir adresle değiştirmek. Biraz araştırma biraz denemeler ile metin içerisinde yer alan linkleri yakalayabildim.
Aşağıdaki örnekte $urls linkleri yakalıyor ancak ben onları alıp değiştiremiyorum.
Yardımlar için şimdiden teşekkür ederim. PHP- Kodu: if(preg_match_all('/<a href="(.*?)">/i', $icerik, $eslesmeler)) {
$urls = $eslesmeler[1];
}
for($i=0;$i < count($urls); $i++){
$degistirilecek[$i] = rand(12521521,215821512512);
}
$text = preg_replace(/<a href="(.*?)">/i, $degistirilecek, $icerik);
Sonradan bulduğum, en kötü ihtimal olarak gördüğüm ama en azından çalışan birşey var. Olur da birilerinin ihtiyacı olursa diye ekleyeyim dedim. PHP- Kodu: $aranacak= array('@(<a\s*[^>]*href=[\'"]?)(https?://)?@');
$degistirme= array('\yonlendirme_dosyasi.php?q=');
$son_icerik = preg_replace($aranacak, $degistirme, $icerik);
Konu Taximact tarafından (05-09-2011 Saat 15:42:56 ) değiştirilmiştir..
|