2025-03-30 10:04:49
是不是在查出来的已经排序过的数组中找到某个id?如果是,那么假如说现在有10条数据,已经排序完成, 我需要找到我的id是2的排在第几个?
/**
*假如说现在是数组$data,里面有id是2的数据.那么,$id = 2.(我是按照从数据库中查出来的数据进行写的,数据库查出来的是二维数组)
*循环数组$data,判断id字段是2的值,如果相等,那么拿出该数组的下标,并+1(数组默认从0开始)
**/
$id = 2;
$key = '';
foreach ($data as $k => $v) {
if ($v['id'] == $id) {
$key = $k + 1;
}
}
var_dump($key);//这就是你需要的名次
2025-03-30 11:01:01
<?php
$key = 0;
$data =//执行mysql查询
$arrs = array_map('array_shift', $data);//主要是产生一个新的数组(mysql取出来一般是二维数组)!
foreach ($arrs as $k => $v) {
if ($v== $id) {
$key = $k + 1;
}
}
print_r($key);
?>
/**
其实楼上已经很好了,不知道他为什么要加 $v['id'] 直接$v不行吗?
**/