0
我想添加一個新的bbcode到我的phpfusion應用程序。我正在使用preg_replace。下面的代碼:preg_replace捕獲組檢查
$text = preg_replace(
"#\[gameimg(float:(left|center|right))?\]((http|ftp|https|ftps)://)(.*?)(\.(jpg|jpeg|gif|png|JPG|JPEG|GIF|PNG))\[/gameimg\]#sie",
"'<span style=\"display: block; max-width: 350px; margin: 0 0 5px 5px; $1\"><img src=\"'
. (strlen('$3') > 0 ? '$3' : BASEDIR.GAMESDIR)
. '$5$6\" alt=\"$5$6\" style=\"border:0px; max-width: 350px;\" /></span>'",
$text
);
如果我提供一個絕對URL(EX [gameimg] HTTP://localhost/dirname/file.jpg [/ gameimg])一切工作正常,圖像顯示爲預期。但是,如果我使用相對url([gameimg] dirname/file.jpg [/ gameimg])省略了protokol和hostname,我希望將basedir.gamedir常量追加到給定的url,但它根本不起作用,它會打印出來原始的bbcode沒有任何替換,而不是圖像。我究竟做錯了什麼?
沒錯林傻在凌晨2點......應該是可選的。謝謝! – posthy