jaipai — 2012-06-26T13:29:53-04:00 — #1
I'm having quite a lot of trouble with my script. I'm using in_array() which apparently after research have found out this does not work with associative arrays.
First let me tell you what I want to accomplish: All I need to do is find a specific 'id' from the associative array, there could be multiples id's but only one with a specific value which I'm searching for.
Again after doing a few google searches I tried looking for different ways. array_key_exists() was recommended but doesn't that only look for the key so if I look for a specific id = 2 it only looks for id. Or does nit not?
jaipai — 2012-06-26T14:24:12-04:00 — #2
Just used a loop instead. thanks
cpradio — 2012-06-26T14:42:28-04:00 — #3
Maybe array_search()? If you have a multi-dimension array, it looks like the comments has a solution for that as well.
tunein — 2012-06-26T15:46:02-04:00 — #4
this is very unclear. Post your code so that we can understand your(: question. I think you want to count values, try array_count_values look it up maybe it is what you need.
jaipai — 2012-06-26T16:06:33-04:00 — #5
I've just decided to go with a loop. My dataset won't be any larger than 0-10 and rarely, rarely over 10. But thanks.
serenarules — 2012-06-26T20:28:57-04:00 — #6
Two functions you must know when using arrays: array_keys and array_values. When using assoc arrays, you can split the keys and values up into separate non-assoc arrays.
This should do it.
$values = array(
'bob' => 'friend',
'sam' => 'enemy'
$isEnemyPresent = in_array('enemy', array_values($values));
Of course, if the value you are looking for is nested even deeper, it would be wiser to create a recursive method to dig into it.