/** * 转换字符串中的ubb代码使可读 * @param string 原字符串 * @param string 目标平台 pc ios5 ios4 * @return bool 是/否 */ public static function ubbDecodeLite($s, $p_device = 'ios5') { $s = preg_replace('/</', '<', $s); $s = preg_replace('/>/', '>', $s); $s = preg_replace('/"/', '"', $s); $s = preg_replace('/\'/', ''', $s); $s = preg_replace('/<br.*?>/', '<br />', $s); $s = preg_replace('/<p>/', '<p>', $s); $s = preg_replace('/<\\/p>/', '</p>', $s); $s = preg_replace('/([^\\]^=]|^)(https?)(:\\S+)\\.(gif|png|bmp|jpg)/i', '$1[img]$2$3.$4[/img]', $s); //[ur,$sl] $s = preg_replace('/@([^\\.\\s<>]*)(\\s)/i', '[url=/$1]@$1[/url]$2', $s); //[ur,$sl] $s = preg_replace('/([^\\]=]|^)(https?|ftp|gopher|news|telnet|mms|rtsp)(:[\\w\\-\\.\\/?\\@\\%\\!\\&=\\+\\~\\:\\#\\;\\,]+)/i', '$1[url=$2$3]$2$3[/url]', $s); //[ur,$sl] $s = preg_replace('/\\[url\\](https?|ftp|gopher|news|telnet|mms|rtsp)(:.+?)\\[\\/url\\]/i', '[url=$1$2]$1$2[/url]', $s); //[ur,$sl] $s = preg_replace('/\\[url=(.*?)\\](.+?)\\[\\/url\\]/i', '<a href="$1" >$2</a>', $s); //for ios $s = preg_replace('/\\[item=(\\d+?)-(\\d+?)-(.*?)\\](.*?)\\[\\/item\\]/i', '<a href="http://www.appjk.com/item/$1-$2-$3"> [item$1:$4]</a>', $s); $s = preg_replace('/\\[app.*?(\\d{9}).*?\\[\\/app\\]/i', '<a href="http://www.appjk.com/app/$1"> [app]</a>', $s); $s = preg_replace('/\\[video](.+?)\\[\\/video\\]/i', '<a href="$1"> [video]</a>', $s); $s = preg_replace('/\\[img(\\d{0,3})\\](.+?)\\[\\/img\\]/i', '<img src="$2"/>', $s); $s = W2String::convertEmojiForDevice($s, $p_device); //emoji return $s; }