PHP:随机加载3个html片段中的一个

PHP:随机加载3个html片段中的一个,php,html,Php,Html,可能是一件简单的事情,但我想不出一个简单而好的解决方案 我想在页面加载中随机加载三个视频中的一个 <video loop autoplay class="StretchtoFit"> <source src="assets/videos/cloud.mp4" type="video/mp4"> <source src="assets/videos/cloud.ogg" type="video/ogg"> <source src

可能是一件简单的事情,但我想不出一个简单而好的解决方案

我想在页面加载中随机加载三个视频中的一个

  <video loop autoplay class="StretchtoFit">
    <source src="assets/videos/cloud.mp4" type="video/mp4">
    <source src="assets/videos/cloud.ogg" type="video/ogg">
    <source src="assets/videos/cloud.webm" type="video/webm">
  </video>
  <video loop autoplay class="StretchtoFit">
    <source src="assets/videos/bath.mp4" type="video/mp4">
    <source src="assets/videos/bath.ogg" type="video/ogg">
    <source src="assets/videos/bath.webm" type="video/webm">
  </video>
  <video loop autoplay class="StretchtoFit">
    <source src="assets/videos/train.mp4" type="video/mp4">
    <source src="assets/videos/train.ogg" type="video/ogg">
    <source src="assets/videos/train.webm" type="video/webm">
  </video>
该网页是基于php的。有没有简单的方法可以随机使用三个标签中的一个,而不加载另外两个

您将如何做到这一点?

PHP:

$videos = array('cloud', 'bath', 'train');
$i = rand(0, count($videos) - 1); // between 0 and $videos count minus 1
HTML:

我正在使用缩写标记来回显PHP:

HTML:


我正在使用简写标签来回音创建一个包含对象的数组,生成一个随机数,使用随机数作为索引创建一个包含对象的数组,生成一个随机数,使用随机数作为索引使其可扩展:$I=rand0,count$videos=array'cloud','bath','train'-1;而且应该是$videos[$i]而不是$i.@Pankucins:-好处远远大于后果。当然,每个人都有自己的权利;。别担心,你还有我的投票权。你应该指出@Pankucins说了什么。您应该提到,这取决于配置short\u open\u tag=1;在php.ini上,或者使用echo发布第二个块。在这种情况下,我不同意使用echo。它的可读性较差,从未听说过有人真的有问题,即使你有问题,也可能需要30秒的搜索才能解决;而且应该是$videos[$i]而不是$i.@Pankucins:-好处远远大于后果。当然,每个人都有自己的权利;。别担心,你还有我的投票权。你应该指出@Pankucins说了什么。您应该提到,这取决于配置short\u open\u tag=1;在php.ini上,或者使用echo发布第二个块。在这种情况下,我不同意使用echo。它的可读性较差,从未听说过有人真的有问题,即使你有问题,也可能需要30秒的搜索才能解决。
<video loop autoplay class="StretchtoFit">
 <source src="assets/videos/<?= $videos[$i]; ?>.mp4" type="video/mp4">
 <source src="assets/videos/<?= $videos[$i]; ?>.ogg" type="video/ogg">
 <source src="assets/videos/<?= $videos[$i]; ?>.webm" type="video/webm">
</video>
<?php 
    $videos = ['cloud', 'bath', 'train'];
    $max    = count($videos);       // gives 3 
    $i      = rand(0, $max - 1);    // we need 0 to 2 
    $exts   = ['mp4','oog','webm']; // oog is not needed
?>

<video loop autoplay class="StretchtoFit">
<?php 
    foreach($exts as $ext):
        echo '<source src="assets/videos/'. $videos[$i].$ext. '" type="video/'. $ext .'">';
    endforeach; 
?>
</video>