Gebelik Soru PHP değiştirin

4 Cevap

Ben bir url var, http://www.jdocy.com/click-42343-32422

PHP'nin preg_replace fonksiyonu ile url 42343 bölümünü değiştirmek istiyor.

Bunu nasıl yapıyor hakkında gitmek istiyorsunuz?

4 Cevap

Eğer www.jdocy.com/32422 için www.jdocy.com/42343-32422 dönüştürmek istiyor musunuz? Eğer öyleyse, sen gibi bir şey geribaşvuruları kullanabilirsiniz:

 $url = preg_replace('/^(.+/)[0-9]+-([0-9]+)$/', '$1$2', $url)
$rep = '\1' + addslashes(111111) + '-\3';
$url = preg_replace('#(/)([\d]+)-([\d]+)#', $rep, $url);

111111 Eklemek istediğiniz ne olduğu. Addslashes yanlışlıkla geribaşvuru dahil önlemek için gerekli olan (\ 1, \ 2, \ 3) ...

Edit: Eksik alıntı Fix

$url = preg_replace('`(?<=\.com/click-)\d+`i', 'replacement text', $url);

Bir look-behind kullanın ve herhangi bir metni yeniden eklemek gerekmez.

$url = preg_replace('/^(.+/)[0-9]+-([0-9]+)$/', '$1$2', $url)

[spam edited out]