我觉得这是一个业余爱好者,但我一直在努力解决这个问题。
我正在制作一个包含嵌入式YouTube视频和富文本编辑器的论坛。我需要一个函数将HTML标记转换为BBCode,另一个函数将BBCode转换回HTML。
BBCode为HTML
$message = (get message from database);
$A = '/\[youtube](.*?)\[\/youtube\]/is';
$B = '<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/$1" width="425" height="350"><param name="movie" value="http://www.youtube.com/v/$1"><param name="wmode" value="transparent"></object>';
preg_replace($A, $B, $message);
我需要一个反转此过程的脚本,将HTML转换为BBCode。如果有人可以帮助我,我会非常感激,或者建议一个更简单的方法,如果存在,或者甚至是一个可以提供一些洞察力的链接。
谢谢。
答案 0 :(得分:1)
试试这个
$message = 'Some text
<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/abcdefgh" width="425" height="350"><param name="movie" value="http://www.youtube.com/v/abcdefgh"><param name="wmode" value="transparent"></object>
More text
<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/abcdefgh" width="425" height="350"><param name="movie" value="http://www.youtube.com/v/abcdefgh"><param name="wmode" value="transparent"></object>
Even more text';
echo preg_replace("/\<object.*?youtube\.com\/v\/(.*?)\".*?object\>/ims", "[youtube]$1[/youtube]", $message);