我从数据库中获取视频ID,随机顺序限制为30,但是想在蛋糕php 3中显示发布日期的视频。请协助
答案 0 :(得分:0)
事实上,您的问题非常模糊,而且您没有提供任何代码,这就是您投票的原因。下次尝试显示你尝试了一些东西,因为即使你这样做了,这也是一个两行长的问题。
我理解:
所以,试试:
// Retrieve all ids
$ids = $this->Videos->find('list')->toArray();
$ids = array_keys($ids);
// Select 30 random ids from the ids list
$total = count($ids);
$count = 30 <= $total ? 30 : $total;
$selectedIds = [];
for($i = 0; $i < $count; $i++) {
$newId = -1;
do {
$newId = rand(0, $total - 1);
} while(!in_array($newId, selectedIds));
$selectedIds[] = $newId;
}
// Now you got your ids in an array
$videos = $this->Videos->find('all')
->where(['id' => $selectedIds])
->order(['publish_date' => 'DESC'])
->limit(30);