本文目录一览:
- 1、php代码中重复的id怎么处理
- 2、PHP 数组重组 把相同含有ID的放到一个新的数组了!
- 3、PHP 如何去除相同的id 在线等
- 4、php查询重复关键字
- 5、PHP如何循环重复ID只输出一组?
php代码中重复的id怎么处理
我觉得你在创建一个新id前就应该检查此id曾经是否被创建过,如果创建过就不再创建,而不是都创建好了才去检查是否有重复然后删除
PHP 数组重组 把相同含有ID的放到一个新的数组了!
$arr=array(
0=array(
'tid'=26,
'tname'='内衣',
'id'=1
),
1=array(
'tid'=25,
'tname'='女装',
'id'=1
),
2=array(
'tid'=27,
'tname'='男装',
'id'=2
),
3=array(
'tid'=28,
'tname'='运动',
'id'=2
),
4=array(
'tid'=29,
'tname'='户外',
'id'=2
),
5=array(
'tid'=30,
'tname'='男鞋',
'id'=3
),
6=array(
'tid'=31,
'tname'='女鞋',
'id'=3
),
7=array(
'tid'=32,
'tname'='个人化妆',
'id'=4
),
);
$item=array();
foreach($arr as $k=$v){
if(!isset($item[$v['id']])){
$item[$v['id']][]=$v;
}else{
$item[$v['id']][]=$v;
}
}
print_r($item);
PHP 如何去除相同的id 在线等
?php
$arr = array(
array('id'=1,'name'='小明','time'='1'),
array('id'=1,'name'='小明','time'='2'),
array('id'=1,'name'='小明','time'='3'),
array('id'=2,'name'='小写','time'='4'),
array('id'=3,'name'='小明','time'='5'),
array('id'=2,'name'='小写','time'='6'),
array('id'=5,'name'='小明','time'='7'),
);
print_r($arr);
$ids = array();
$newarr = array();
foreach($arr as $_arr){
if(!isset($ids[$_arr['id']])){
$ids[$_arr['id']] = $_arr['id'];
$newarr[]=$_arr;
}
}
print_r($newarr);
exit;
php查询重复关键字
?php
$rows=$db-select('b','id,title');//查询id和title数据,
$area_str=array( "上海" , "北京" , "沈阳" , "南京" , " 武汉","青海" ,"山东","济南","武汉");//地区关键字
$key_str = array("有限公司" , "实业" , "贸易" , "科技","工程" );//名称关键字
$str=array_merge($area_str,$key_str);//合并数组
$arr=array();
foreach($rows as $row){
$title = str_replace ( $str , "" , $row['title'] );
$arr[$row['id']]=$title;//将id和替换的title加进数组,得到真正的名称
}
$arr_un=array_unique($arr);
$arr_assoc=array_diff_assoc($arr,$arr_un);
$arr_id=array();
foreach($arr_assoc as $assoc){
foreach($arr_un as $key=$un){
if($assoc==$un){
$arr_id[]=$key;
}
}
}
//$arr_id这个数组就是重复名称的id,根据这个id进入数据库查询就行
//我重新修改了一下,但没有测试,你只要按要求查询出title的数据和根据id查询所需要的东西就行,我这边用原生链接比较麻烦,要改好多东西
?
就不客气啦
PHP如何循环重复ID只输出一组?
可以从sql语句出发,如:$query="select * from order_items group by order_id order by order_id desc";
或者从逻辑上出发,$arr=mysqli_query($conn,$query);后面加上一句$order_list = array();,然后while里面改成
while($row = mysqli_fetch_array($arr)){
if(!in_array($row['order_id'],$order_list)){
echo 'tr';
echo 'td'.$row['order_id'].'/td';
echo 'td'.$row['isbn'].'/td';
echo 'td'.$row['item_price'].'/td';
echo 'td'.$row['quantity'].'/td';
echo 'td'.$row['trade_status'].'/td';
echo '/tr';
$order_list[] = $row["order_id"];
}
}