2

因为我不是一个 php 人,所以我需要帮助来创建一个包含 YouTube 视频和每个视频描述的数组。

现在我有一个只保存视频 ID 的数组。向每个 ID 添加描述的最佳方法是什么,以便我可以轻松地遍历数组并在下面创建所需的输出。

<?php
    $vids = array(
        "OOWvNbU6ciLg",
        "5itTJabAJfps",
        "jFA8Tesmames",
        "Trz9Y01xx1TY",
        "mMQGcIrlyseU",
        "qGrlQNvqqL14",
        "QymnLbSpJ7lA",
        "jFAh8Tesmmes",
        "5itTJtbAJfps",
        "OOWvNpU6ciLg"
    );
?>

我最终想要的是一个视频列表,下面有视频描述。而且我希望在创建列表之前对我的数组进行洗牌,因此每次创建列表时我都有不同的顺序。

HTML

<li class="video">
    <figure>
        <iframe width="100%" height="200px" src="http://www.youtube.com/embed/OxXAT2epfEYA?HD=1;rel=0;showinfo=0" frameborder="0" allowfullscreen></iframe>
        <figcaption>Description of the video</figcaption>
    </figugre>
</li>

定义数组的最佳方法是什么,以便我可以对其进行洗牌,然后循环遍历数组并使用嵌入代码和下面的描述打印每个<li>项目。iframe

先感谢您。

4

2 回答 2

2

将有关视频的所有信息保存在关联数组中:

$single_video = array(
    "id" => "OOWvNbU6ciLg",
    "description" => "Video descr"
);

现在构建这些视频的数组:

$vids = array(
    array(
        "id" => "OOWvNbU6ciLg",
        "description" => "Video descr"
    ),
    array(
        "id" => "5itTJabAJfps",
        "description" => "Other video descr"
    ),
);

现在您可以轻松地对其进行随机播放,然后循环:

$vids = array();
shuffle($vids);
foreach($vids as $video){
    //$video here is associative array with single video
    echo "{$video['id']} - {$video['description']}";
}
于 2012-10-14T08:52:09.947 回答
1

只是在我的脑海中想你可以通过将 ID 和描述放在数组中来创建一个关联数组。

vidArray = array(
videoId1 => 'This is the description for video 1.',
videoId2 => 'This is the description for video 2',
etc. );

然后,您可以使用 for each 语句循环遍历数组并使用数组元素信息创建 iframe。

PHP 也有一个内置的 shuffle 函数来随机打乱一个数组。 阵列洗牌

于 2012-10-14T09:00:20.753 回答