コード例 #1
0
 public function UserListeningToAudio()
 {
     $em = $this->getDoctrine()->getManager();
     $ulta = new UserListenToAudio();
     $ulta = setUser('1');
     $ulta = setAudio('2');
     $ulta = setStopTime('429');
     $em->persist($ulta);
     $em->flush();
 }
コード例 #2
0
ファイル: bbscode.php プロジェクト: jechiy/PHPWind
function convert($message, $allow, $type = "post")
{
    global $isGM, $pwPostHide, $pwSellHide, $pwEncodeHide, $code_num, $code_htm, $phpcode_htm, $foruminfo, $db_picpath, $imgpath, $stylepath, $db_attachname, $attachpath, $db_cvtimes, $forumset, $tpc_tag, $db_windcode, $sell_num;
    $code_num = $sell_num = 0;
    $code_htm = array();
    if (strpos($message, "[code]") !== false && strpos($message, "[/code]") !== false) {
        $message = preg_replace("/\\[code\\](.+)?\\[\\/code\\]/eisU", "phpcode('\\1')", $message, $db_cvtimes);
    }
    if (strpos($message, "[payto]") !== false && strpos($message, "[/payto]") !== false) {
        require_once R_P . 'require/paytofunc.php';
        $message = preg_replace("/\\[payto\\](.+?)\\[\\/payto\\]/eis", "payto('\\1')", $message);
    }
    if (($pos = strpos($message, "[paragraph]")) !== false && $pos == min($pos, 10)) {
        $message = str_replace('[paragraph]', '', $message);
        $tmplist = explode('<br />', $message);
        $message = '<p style="text-indent: 2em;">' . implode('</p><p style="text-indent: 2em;">', $tmplist) . '</p>';
    }
    $message = preg_replace('/\\[list=([aA1]?)\\](.+?)\\[\\/list\\]/is', "<ol type=\"\\1\" style=\"margin:0 0 0 25px\">\\2</ol>", $message);
    $searcharray = array('[u]', '[/u]', '[b]', '[/b]', '[i]', '[/i]', '[list]', '[li]', '[/li]', '[/list]', '[sub]', '[/sub]', '[sup]', '[/sup]', '[strike]', '[/strike]', '[blockquote]', '[/blockquote]', '[hr]', '[/backcolor]', '[/color]', '[/font]', '[/size]', '[/align]');
    $replacearray = array('<u>', '</u>', '<b>', '</b>', '<i>', '</i>', '<ul style="margin:0 0 0 25px">', '<li>', '</li>', '</ul>', '<sub>', '</sub>', '<sup>', '</sup>', '<strike>', '</strike>', '<blockquote>', '</blockquote>', '<hr />', '</span>', '</span>', '</font>', '</font>', '</div>');
    $message = str_replace($searcharray, $replacearray, $message);
    $message = str_replace("p_w_upload", $db_attachname, $message);
    //此处位置不可调换
    $message = str_replace("p_w_picpath", $db_picpath, $message);
    //此处位置不可调换
    $searcharray = array("/\\[font=([^\\[\\(&\\;]+?)\\]/is", "/\\[color=([#0-9a-z]{1,15})\\]/is", "/\\[backcolor=([#0-9a-z]{1,10})\\]/is", "/\\[email=([^\\[]*)\\]([^\\[]*)\\[\\/email\\]/is", "/\\[email\\]([^\\[]*)\\[\\/email\\]/is", "/\\[size=(\\d+)\\]/eis", "/\\[align=(left|center|right|justify)\\]/is", "/\\[glow=(\\d+)\\,([0-9a-zA-Z]+?)\\,(\\d+)\\](.+?)\\[\\/glow\\]/is");
    $replacearray = array("<font face=\"\\1 \">", "<span style=\"color:\\1 \">", "<span style=\"background-color:\\1 \">", "<a href=\"mailto:\\1 \">\\2</a>", "<a href=\"mailto:\\1 \">\\1</a>", "size('\\1','{$allow['size']}')", "<div align=\"\\1\">", "<div style=\"width:\\1px;filter:glow(color=\\2,strength=\\3);\">\\4</div>");
    $message = preg_replace($searcharray, $replacearray, $message);
    if ($db_windcode) {
        $message = preg_replace($db_windcode['searcharray'], $db_windcode['replacearray'], $message);
    }
    if ($allow['pic']) {
        $message = preg_replace("/\\[img\\]([^\\<\r\n\"']+?)\\[\\/img\\]/eis", "cvpic('\\1','','{$allow['picwidth']}','{$allow['picheight']}')", $message, $db_cvtimes);
    } else {
        $message = preg_replace("/\\[img\\]([^\\<\r\n\"']+?)\\[\\/img\\]/eis", "nopic('\\1')", $message, $db_cvtimes);
    }
    if (strpos($message, '[/MUSIC]') !== false || strpos($message, '[/music]') !== false) {
        $message = preg_replace("/\\[music=(\\d+)\\](.+?)\\[\\/music\\]/eis", "SetMusic('\\1')", $message, $db_cvtimes);
    }
    if (strpos($message, '[/URL]') !== false || strpos($message, '[/url]') !== false) {
        $searcharray = array("/\\[url=(https?|ftp|gopher|news|telnet|mms|rtsp|thunder|ed2k|fs2you|flashget|qqdl)([^\\[\\s]+?)(\\,(1)\\/?)?\\](.+?)\\[\\/url\\]/eis", "/\\[url\\]www\\.([^\\[]+?)\\[\\/url\\]/eis", "/\\[url\\](https?|ftp|gopher|news|telnet|mms|rtsp|thunder|ed2k|fs2you|flashget|qqdl)([^\\[]+?)\\[\\/url\\]/eis", "/\\[url=([^\\[\\s]+?)(\\,(1)\\/?)?\\](.+?)\\[\\/url\\]/eis");
        $replacearray = array("cvurl('\\1','\\2','\\5','\\4','{$allow['checkurl']}')", "cvurl('\\1','','','','{$allow['checkurl']}')", "cvurl('\\1','\\2','','','{$allow['checkurl']}')", "cvurl('','\\1','\\4','\\3','{$allow['checkurl']}')");
        $message = preg_replace($searcharray, $replacearray, $message);
    }
    $searcharray = array("/\\[fly\\]([^\\[]*)\\[\\/fly\\]/is", "/\\[move\\]([^\\[]*)\\[\\/move\\]/is");
    $replacearray = array("<marquee width=90% behavior=alternate scrollamount=3>\\1</marquee>", "<marquee scrollamount=3>\\1</marquee>");
    $message = preg_replace($searcharray, $replacearray, $message);
    if ($type == 'post') {
        $tpc_tag && ($message = relatetag($message, $tpc_tag));
        if ($foruminfo['allowhide'] && strpos($message, "[post]") !== false && strpos($message, "[/post]") !== false) {
            $message = preg_replace("/\\[post\\](.+?)\\[\\/post\\]/eis", "post('\\1')", $message);
        }
        if ($forumset['allowencode'] && strpos($message, "[hide=") !== false && strpos($message, "[/hide]") !== false) {
            $message = preg_replace("/\\[hide=(.+?)\\](.+?)\\[\\/hide\\]/eis", "hidden('\\1','\\2')", $message);
        }
        if ($foruminfo['allowsell'] && strpos($message, "[sell") !== false && strpos($message, "[/sell]") !== false) {
            $message = preg_replace("/\\[sell=(.+?)\\](.+?)\\[\\/sell\\]/eis", "sell('\\1','\\2')", $message);
        }
    }
    if (strpos($message, "[quote]") !== false && strpos($message, "[/quote]") !== false) {
        $message = preg_replace("/\\[quote\\](.*?)\\[\\/quote\\]/eis", "qoute('\\1')", $message);
    }
    if (is_array($code_htm)) {
        krsort($code_htm);
        foreach ($code_htm as $codehtm) {
            foreach ($codehtm as $key => $value) {
                $message = str_replace("<\twind_code_{$key}\t>", $value, $message);
            }
        }
    }
    /* 去除quote中链接 */
    $quoteCode = "<blockquote class=\"blockquote3\"><div class=\"text\" style=\"padding:15px;\">";
    $quotePos = strpos($message, $quoteCode);
    /*fix 20110916*/
    if ($quotePos !== false) {
        $endQuotePos = strpos($message, "</div></blockquote>", $quotePos);
        $startQuotePos = $quotePos + strlen($quoteCode) - 1;
        $quoteContent = substr($message, $startQuotePos, $endQuotePos - $startQuotePos);
        $quoteContent = preg_replace('/(<br\\s*\\/?>\\s*){2,}/', '<br>', $quoteContent);
        $quoteContent = preg_replace_callback('/<a\\s+href=(\'|")([^\'"]+)(\'|")[^>]*>([^<]+)<\\/a>/is', 'stripQuoteLinks', $quoteContent);
        $message = substr_replace($message, $quoteContent, $startQuotePos, $endQuotePos - $startQuotePos);
    }
    if ($allow['flash'] && strpos($message, '[flash=') !== false || $allow['mpeg'] && (strpos($message, '[mp3=') !== false || strpos($message, '[rm=') !== false || strpos($message, '[wmv=') !== false)) {
        $message = "<script id=\"js_player\" src=\"js/player.js?1109\"></script>" . $message;
    }
    if ($allow['flash']) {
        $message = setVideo($message);
    } else {
        $message = preg_replace("/\\[flash=(\\d+?)\\,(\\d+?)(\\,(0|1))?\\]([^\\[\\<\r\n\"']+?)\\[\\/flash\\]/is", "<img src='{$imgpath}/wind/file/music.gif' align='absbottom'> <a target='_blank' href='\\5 '>flash: \\5</a>", $message, $db_cvtimes);
    }
    if ($type == 'post') {
        $t = 0;
        while (strpos($message, '[table') !== false && strpos($message, '[/table]') !== false) {
            $message = preg_replace('/\\[table(?:=(\\d{1,3}(?:%|px)?)(?:,(#\\w{6})?)?(?:,(#\\w{6})?)?(?:,(\\d+))?)?\\](.*?)\\[\\/table\\]/eis', "tablefun('\\5','\\1','\\2','\\3','\\4')", $message);
            if (++$t > 4) {
                break;
            }
        }
        if ($allow['mpeg']) {
            $message = setAudio($message);
        } else {
            $message = preg_replace(array("/\\[mp3=[01]{1}\\]([^\\<\r\n\"']+?)\\[\\/mp3\\]/is", "/\\[wmv=[01]{1}\\]([^\\<\r\n\"']+?)\\[\\/wmv\\]/is", "/\\[wmv(?:=[0-9]{1,3}\\,[0-9]{1,3}\\,[01]{1})?\\]([^\\<\r\n\"']+?)\\[\\/wmv\\]/is", "/\\[rm(?:=[0-9]{1,3}\\,[0-9]{1,3}\\,[01]{1})\\]([^\\<\r\n\"']+?)\\[\\/rm\\]/is"), "<img src=\"{$imgpath}/wind/file/music.gif\" align=\"absbottom\"> <a target=\"_blank\" href=\"\\1 \">\\1</a>", $message, $db_cvtimes);
        }
        //修复iframe安全问题 by taishici
        if ($allow['iframe']) {
            //iframe开启的情况
            //$message = preg_replace("/\[iframe\]([^\[\<\r\n\"']+?)\[\/iframe\]/is","<IFRAME SRC=\\1 FRAMEBORDER=0 ALLOWTRANSPARENCY=true SCROLLING=YES WIDTH=97% HEIGHT=340></IFRAME>",$message,$db_cvtimes);
            $message = preg_replace("/\\[iframe(=(\\d+?)\\,(\\d+?))?\\]([^\\[\\<\r\n\"']+?)\\[\\/iframe\\]/eis", "setIframe('\\4', '\\2', '\\3')", $message, $db_cvtimes);
        } else {
            //iframe没开启的情况
            //$message = preg_replace("/\[iframe\]([^\[\<\r\n\"']+?)\[\/iframe\]/is","Iframe Close: <a target=_blank href='\\1 '>\\1</a>",$message,$db_cvtimes);
            $message = preg_replace("/\\[iframe\\]([^\\[\\<\r\n\"']+?)\\[\\/iframe\\]/eis", "setIframeNo('\\1')", $message, $db_cvtimes);
        }
        strpos($message, '[s:') !== false && ($message = showface($message));
    }
    if (is_array($phpcode_htm)) {
        foreach ($phpcode_htm as $key => $value) {
            $message = str_replace("<\twind_phpcode_{$key}\t>", $value, $message);
        }
    }
    return $message;
}