1

いくつかの正規表現に問題があります。iframe の src を変更しようとしています。enablejsapi が存在しない場合は追加する必要があります。

preg_match('/<iframe[^>]+src=([\'"])?((?(1).+?|[^\s>]+))(?(1)\1)/', 
$model->video, $matches);
$src = $matches[2];
if(!strstr($src,"enablejsapi")){
    if(strstr($src, "?")){
        $src.="&enablejsapi=1";
    }else{
        $src.="?enablejsapi=1";
    }
}

わかったけど、元に戻せなかった。ビデオを制御するために必要です。何かのようなもの$("#player").stop();

4

1 に答える 1

0

これを試して

preg_match('#<iframe[^>]+src=([\'"])(.*)\1#isU', $model->video, $matches);
$src = $matches[2];
if(false === strstr($src, 'enablejsapi')){
    if(false !== strstr($src, '?')){
        $src.= '&enablejsapi=1';
    }else{
        $src.= '?enablejsapi=1';
    }
}
$model->video = preg_replace('#' . preg_quote($matches[2]) . '#', $src, $model->video);
于 2013-07-02T11:03:22.160 に答える