Hello, I need to use array_push() to add some data to another array But the problem i can't add key to array for example <?php $array = array('name' => 'Khaled Attia'); $add = array('Age' => '19'); array_push($array, $add); print_r($array); ?> PHP: output: Array ( [name] => Khaled Attia [0] => Array ( [Age] => 19 ) ) Code (markup): But I need output like it Array ( [name] => Khaled Attia [Age] => 19 ) Code (markup): How can I do this??? Thanks
I need use array_push() because pushing will be in custom function and array variable not in function and i use "global" to get this Variable in function and add data for example <?php $var = array('name' => 'Khaled'); function add_data(){ global $var; $add = array('Age' => '19'); array_push($var, $add); } add_data(); print_r($var); ?> PHP:
<?php $var = array('name' => 'Khaled'); function add_data(){ global $var; $var['Age'] = 19; } add_data(); print_r($var); ?> PHP: working fine, but there is anyway to use array_push() ?
No, array_push does not preserve keys. You can just do: $add = array('Age' => 19); list ($k, $v) = each($add); $var[$k] = $v; Code (markup):
Hi, you can use array_push of course but better should be passing the global array var as function parameter. <?php $var = array('name' => 'Khaled'); function add_data($value){ $value['Age'] = 19; return; } add_data(&$var); print_r($var); ?> PHP: Regards, Nick