Re: Simple array problem
| From: | Thijs Lensselink | Date: | Tue, 01 Jul 2008 08:19:46 +0000 |
| Subject: | Re: Simple array problem | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-276153@lists.php.net to get a copy of this message | ||
Quoting Brian Dunning <brian@briandunning.com>:
I'm trying to add a number to a value in an array. Pretend I have this: $new_value = array('orange', 2); $arr = array( array('blue', 4), array('orange', 5), array('green', 6)); I want to add the new value to the existing matching array element, so I end up with this: $arr = array( array('blue', 4), array('orange', 7), array('green', 6)); Seems like it should be really simple but all the ways I can figure out to do it are too kludgey.Just loop through the array to update. And use in_array to check if the key to update exists. Then you can do $array[$key][1] = $newValue. Something like this maybe: function updateArray(&$array, $update) {
list($updateKey, $updateValue) = $update;
foreach ($array as $key => $subArray) {
if (in_array($updateKey, $subArray)) {
$array[$key][1] = $updateValue;
}
}
}
updateArray($arr, $new_value);
var_dump($arr);