Re: [請益] 如何寫出wiki關鍵字的效果呢?

看板PHP作者 (阿美)時間16年前 (2010/01/10 19:55), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串3/3 (看更多)
※ 引述《lottemarines (一平)》之銘言: : : 各位前輩大家好: : : 想請教如何寫出類似wiki關鍵字的效果,舉例來說,就是使用者在留言的時候 : : 用[]包住的文字,存入資料庫之後就會變成連結, : : 甚至還能分辨資料庫中是否有此資料,然後顯現出不同的顏色(此段可以先不用實做) : : 例如 [ptt],就會連結到 http://localhost/serch.php?text=ptt : : 當然,當使用者編輯留言的時候,也能恢復成 [ptt] 。 : : 請高手賜教或者提供關鍵字、相關網址供小弟參考,感謝!! : : 推 lvlightvivi:str_replace 01/10 18:59 : : 推 lvlightvivi:preg_replace 總之就是把它換掉就是了 01/10 19:03 : 是可以把 [ 符號代換成 : <a href="http://localhost/serch.php?text= : 然後 ] 符號代換成 : </a> : 可是中間的關鍵字([ptt]或者[喬丹])要怎麼取出來呢? 對不起我是初學者qq <?php $string = "Welcome to [ptt]"; //你要改的文章 $pattern = "/\[(\w+)\]/"; //正規表示式 請務必學一下 //上面的意思是找出 [string] 這樣的形式 用括號把裡面string抓為暫存 $replacement = "<a href='http://localhost/serch.php?text=\${1}'>\${1}</a>"; //要代換的項目\${1}就是你抓的暫存 print preg_replace($pattern, $replacement, $string); //印出結果 ?> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.246.94

01/11 14:01, , 1F
\w不包含中文喔
01/11 14:01, 1F

01/14 01:09, , 2F
真的是英文可以,但是中文的話跑不出來
01/14 01:09, 2F

01/14 01:15, , 3F
把w改成S就可以抓到中文了,很感謝^^
01/14 01:15, 3F
文章代碼(AID): #1BIS0SHe (PHP)
文章代碼(AID): #1BIS0SHe (PHP)