代码之家  ›  专栏  ›  技术社区  ›  GorillaApe

使用php调整嵌入视频的大小

  •  0
  • GorillaApe  · 技术社区  · 15 年前

    你好,我正在开发一个视频库
    但是问题是我应该限制它们的尺寸。

    <object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/R6uJGqS-KQY?fs=1&amp;hl=el_GR"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/R6uJGqS-KQY?fs=1&amp;hl=el_GR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>
    

    我决定使用嵌入式,因为有很多视频提供商。。。。
    那么,在将其存储到数据库之前,调整其大小的最佳方法是什么?
    只有css的解决方案吗?

    所以regexp是唯一的解决方案?

    2 回复  |  直到 15 年前
        1
  •  1
  •   tftd    15 年前

    如果我不得不做一个类似的任务,我会把html转换成xml并得到高度/宽度。 在那之后,我将调整高度或宽度(取决于你需要什么)保持方面。 这样做不会调整实际视频的大小,但可以帮助您通过HTML调整大小。

    <?php
    
    $string = <<<XML
    <?xml version='1.0'?> 
    <object width="480" height="385">
           <param name="movie" value="http://www.youtube.com/v/R6uJGqS-KQY?fs=1&amp;hl=el_GR"> </param>                    
           <param name="allowFullScreen" value="true"></param>
           <param name="allowscriptaccess" value="always"></param>
        <embed src="http://www.youtube.com/v/R6uJGqS-KQY?fs=1&amp;hl=el_GR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true"     width="480" height="385"></embed>                
        </object>
    XML;
    $xml = simplexml_load_string($string);                                        
    echo "Original Width/Height:".$xml->attributes()->width."px/".$xml->attributes()->height."px<br>";
    
    $newwidth = 280;
    $newheight = ($xml->attributes()->height / $xml->attributes()->width) * $newwidth;
    
    echo "New Width/Height:".$newwidth."px/".$newheight."px<br>";
    
    echo <<<HTML
        <object width="{$newwidth}" height="${newheight}">
        <param name="movie" value="http://www.youtube.com/v/R6uJGqS-KQY?fs=1&    amp;hl=el_GR"> </param>
            <param name="allowFullScreen" value="true"></param>
            <param name="allowscriptaccess" value="always"></param>
        <embed src="http://www.youtube.com/v/R6uJGqS-KQY?fs=1&amp;hl=el_GR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true"     width="${newwidth}" height="${newheight}"></embed>
        </object>
    HTML;
    ?>
    

    我已经测试过了,你可以在:
    http://itnews-bg.com/test.php
    资料来源: http://itnews-bg.com/test.phps

    也许还有其他更好的方法,但我会这样做。 希望对你有帮助:)

        2
  •  1
  •   Josh Lee ZZ Coder    15 年前

    <object width="480" height="360">
      <param name="movie" value="http://www.dailymotion.com/swf/video/x9rswu?width=&theme=none&foreground=%23F7FFFD&highlight=%23FFC300&background=%23171D1B&start=&animatedTitle=&iframe=0&additionalInfos=0&autoPlay=0&hideInfos=0"></param>
      <param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param>
      <embed type="application/x-shockwave-flash" src="http://www.dailymotion.com/swf/video/x9rswu?width=&theme=none&foreground=%23F7FFFD&highlight=%23FFC300&background=%23171D1B&start=&animatedTitle=&iframe=0&additionalInfos=0&autoPlay=0&hideInfos=0" width="480" height="360" allowfullscreen="true" allowscriptaccess="always"> </embed>
    </object>
    
    推荐文章