作者tas72732002 (葱头)
看板PHP
标题[请益] 如果筛选array
时间Sun Dec 11 23:45:19 2011
$static_reaction=array(
'1'=>array('id'=>1001,'npc_id'=>1,'type'=>3),
'2'=>array('id'=>1002,'npc_id'=>2,'type'=>4),
'3'=>array('id'=>1003,'npc_id'=>3,'type'=>5),
'4'=>array('id'=>1004,'npc_id'=>4,'type'=>5),
);
请问我可以透过value取得索引吗??
例如:我想找type=4的索引,print_r结果会是2或是把$static_reaction[2],print_r出来
例如:可以取出type=5的索引吗,print_r结果会是3与4
--
感谢大家的推文
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.167.203.99
1F:推 Fantasywind:foreach if 12/11 23:57
2F:→ kerash:用回圈跑判断...? 12/11 23:57
3F:→ bibo9901:foreach($static_r as $v) 12/12 00:07
4F:→ bibo9901: if( $v[type] == 4 ) $result[]=$k; 12/12 00:08
5F:→ bibo9901:$result就是你要的东西 12/12 00:08
6F:→ bibo9901:啊...第一行改成foreach( .... as $k=>$v) 刚少打了 抱歉 12/12 00:09
7F:→ tas72732002:用回圈好像很伤效能~ 12/12 07:45
8F:→ tas72732002:没有别种方法吗? 12/12 07:45
9F:→ superpai:array_search 12/12 08:43
10F:→ akasan:效能先抛到脑後, 等到很慢再来慢慢最佳化 12/12 08:54
11F:→ knives:直接用索引当阵列key不就好了 12/12 09:15
12F:→ MOONRAKER:现在机器很快,不用迷信「效能教」。 12/12 11:52
13F:→ MOONRAKER:除非你的script一秒会跑一万或一百万次 12/12 11:53
14F:→ chrisQQ:如果你 array 很大,不想每次都扫一次,就在这个 array 变 12/12 13:19
15F:→ chrisQQ:更的时候另外存成 array[type] = array(indexs); 的 array 12/12 13:20
16F:→ chrisQQ:用原先的 array 跑 foreach 之後 var_export 存去另外 12/12 13:20
17F:→ chrisQQ:一个档案就好,然後比对这个档案和产生的档案的编辑时间 12/12 13:20
18F:→ chrisQQ:简单来说就是另外建 index。 12/12 13:21
19F:→ dlikeayu:不知道你要用来做什麽,另一种解法就是存到资料库再query 12/13 01:53
20F:→ dlikeayu:出来,想省掉资料库连线 资料又少,就暂存到access 12/13 01:54
21F:→ dlikeayu:要说快这大概零点几秒的时间而已... 12/13 01:54
22F:→ dlikeayu:而且语法无脑至极XD 12/13 01:56
23F:→ dlikeayu:key存成index 然後select index from xxx where type = 4 12/13 02:09
24F:→ dlikeayu:foreach ($result as $k) {echo $k->index;} 12/13 02:10
25F:→ dlikeayu:资料极少就用bibo大的 if没几次,次中就顶多io accse 12/13 02:12
26F:→ dlikeayu: access 12/13 02:13
27F:→ dlikeayu:moon大说的也是,没人知道你的用途一次if几万笔资料 12/13 02:15
28F:→ dlikeayu:然後每秒有几千几万人会执行你这程式? 12/13 02:15