PHP数组输出只显示一个元素

时间:2016-08-24 16:48:40

标签: php arrays video youtube

我正在开发一个小型PHP脚本,它将获取一组youtube id并生成一个动态youtube embeded播放列表。

我正在使用的当前PHP代码 - 只有echos ONE视频。

<iframe width="560" height="315" src="http://www.youtube.com/embed/182oUgBfoLE?&rel=0&modestbranding=1&hd=1&autohide=1&playlist=
<?php
$videos = Array("PGNiXGX2nLU", "VUJOJ0d7e8c", "o0syTUu3_S0", "rXndd78C8-c" );
// Shuffle array
shuffle($videos);
// Loop array
foreach($videos as $video);
{
    // Echo array with commas between elements
    echo "$video ,";
}
?>
" frameborder="0" allowfullscreen></iframe> 

我的问题是如何才能使洗牌和循环数组的所有元素得到回应?

2 个答案:

答案 0 :(得分:1)

我的看法

<?php

$videoIds = array("PGNiXGX2nLU", "VUJOJ0d7e8c", "o0syTUu3_S0", "rXndd78C8-c");
shuffle($videoIds);
$playlist = implode(',', $videoIds);

?>
<iframe width="560" height="315"
        src="http://www.youtube.com/embed/182oUgBfoLE?&rel=0&modestbranding=1&hd=1&autohide=1&playlist=<?= $playlist; ?>" 
        frameborder="0" allowfullscreen>
</iframe>

答案 1 :(得分:0)

尝试使用此代码 -

<?php 
$videos = Array ( "PGNiXGX2nLU", "VUJOJ0d7e8c", "o0syTUu3_S0", "rXndd78C8-c" ); 
// Shuffle array 
shuffle($videos);
$playlist = implode(',', $videos);
?>

<iframe width="560" height="315" src="http://www.youtube.com/embed/182oUgBfoLE?&rel=0&modestbranding=1&hd=1&autohide=1&playlist=<?php echo $playlist;?>" frameborder="0" allowfullscreen></iframe>