?php
创新互联10多年成都企业网站定制服务;为您提供网站建设,网站制作,网页设计及高端网站定制服务,成都企业网站定制及推广,对成都混凝土搅拌机等多个行业拥有多年的网站营销经验的网站建设公司。
$a = array(
'BL001'=array('A14257','B17548'),
'CDF002'=array('A14257','C48751'),
'FGE453'=array('DF5533','GR6445','GH5544'),
'GEN001'=array('NT7532','DE9342','C48751'),
);
$b = array('A14257','E453T4','Y64344','FG4809','C48751','H4443R');
foreach($a as $k=$v){
$t = array_intersect ($v, $b);
if($t){
$c[$k] = $t;
}
}
print_r($c);
?
用file把文件以数组的形式取出来,遍历数组元素,然后用strpos匹配,如果存在aa就unset这个数组元素,最后再将数组转化成字符串,写进文件,代码如下:
?
$file_arr = file("a.txt",FILE_IGNORE_NEW_LINES);
foreach($file_arr as $key = $value){
if(strpos($value,"aa") !== FALSE){
unset($file_arr[$key]);
}
}
$newfile = implode("\n",$file_arr);
file_put_contents("a.txt",$newfile);
?
如果你会用 Linux 的命令 grep ,不用程序也很容易就能出来。
假设 test.txt 文件的内容是问题中的文字。
grep bb test.txt
就出来了。
如果想要写到别的文件,
grep bb test.txt bb.txt
当然用 PHP 也不难
?php
$arr = file('test.txt');
//print_r($arr);
$out = preg_grep('/bb/', $arr);
print_r($out);
?
?php
$arr = array(
array('id'='1','姓名'='小白','性别'='男','班级'='1','总分'=75),
array('id'='2','姓名'='小黑','性别'='男','班级'='1','总分'=76),
array('id'='3','姓名'='小明','性别'='女','班级'='1','总分'=77),
array('id'='4','姓名'='小光','性别'='女','班级'='1','总分'=80),
array('id'='5','姓名'='小草','性别'='女','班级'='1','总分'=82),
array('id'='6','姓名'='小丽','性别'='男','班级'='1','总分'=90),
array('id'='7','姓名'='小红','性别'='男','班级'='1','总分'=90),
array('id'='8','姓名'='小蓝','性别'='男','班级'='1','总分'=84)
);
//第一次遍历数组筛出男性
//用到循环函数、数组函数:foreach、array_push
$manArr = array();//定义个空数组,一会装男性数据
$topScore = 0;//定义个最高总分,一会在遍历过程顺便获取最高分
foreach($arr as $v){
if($v['性别']=='男'){
//对符合男生条件的数组进行记录
array_push($manArr,$v);//把符合男性条件的数组装进刚定义的空数组
//记录男生最高分的分数
if($v['总分']$topScore){
$topScore = $v['总分'];
}
}
}
//所以现在$manArr就是所有男性了,array('小白'=75,...)
//接下来是求出总分最高的,继续用循环的方式取出成绩等于最高分数的
foreach($manArr as $v){
if($v['总分']==$topScore){
echo $v['姓名'] . "\r\n";
}
}
我估计上面是筛选 ,下面就是显示列表吧, 如果是这样的话, 上图中的所有标签都是有个GET参数, 例如点1居室,就把一居室的参数传过去,
后台接收 , 如果
if($_GET['参数'] !=“”){
$sql ="显示全部"
}else{
$sql="where =‘你放进去的参数筛选’";
}
$data = $this-db-listinfo($arr ...);
$data 就是你要放在前台的数组,有筛选 就得到筛选的数据...
如果有问题继续沟通 呵呵
SELECT id,count(*) AS num,name FROM tableb GROUP BY name;
测试数据列表;
sql执行结果