【发布时间】:2021-09-10 13:34:42
【问题描述】:
我创建了一个数组,用于从 MySQL 服务器获取数据。
$ids = array(249853, 245549, 249851, 245552, 245551, 249854, 245550, 282445, 261747, 249852, 222398, 248072, 248390, 272473, 219212, 234140, 249815, 241089, 271940, 274940);
$sorted_ids = implode($ids, ",");
使用 $sorted_ids 获取数据,这是要检索的 ID,但它是按 ID 升序检索数据
$sql = "SELECT ID, number FROM table WHERE ID IN ({$sorted_ids})";
$result = mysqli_query($connection, $sql);
我尝试过使用 ==,但它只显示与其他记录匹配的索引。
$i = 0;
while($row = mysqli_fetch_assoc($result)) {
if( $ids[$i] == $row['ID'] ) {
echo $row['ID']."<br>";
$i++;
}
}
如果两个索引都不匹配其他记录,则显示记录。
如何通过 $ids 数组列表显示记录?
【问题讨论】:
-
你真正想要达到什么目的?如您所说,您的代码将打印出您检索到的每个 ID,当它与您的数组中的 ID 匹配时...您是否希望按照数组中 ID 的顺序打印数据?
-
@Zachary 是的,完全正确
-
@Zachary 我想按数组中 ID 的顺序打印数据
标签: php mysql arrays sorting custom-sort