Reputation: 17
I have a multidimensional array like
$array (
[1]( [camera_name] = name1 )
[2]( [camera_name] = name2 )
[3]( [camera_name] = name3 )
[4]( [camera_name] = name4 )
)
and I just want it so that it is
Array (
[1] = name1,
[2] = name2,
[3] = name3,
[4] = name4 )
I've tried
for($i;$i<count($array);$i++){
$newArray = $array[$i][camera_name];
}
also
foreach($array as $key => $value){
$newArray[$key] = $array[$key][camera_name];
}
But no matter what I do the array always ends up the same:
$newArray (
[1]( [camera_name] = name1 )
[2]( [camera_name] = name2 )
[3]( [camera_name] = name3 )
[4]( [camera_name] = name4 )
)
Upvotes: 0
Views: 91
Reputation: 10142
You are doing it wrong
Should be like this:
foreach($array as $key => $value){
$newArray[$key] = $value['camera_man']; // $value['camera_man']
}
Output:
Array
(
[1] => name1
[2] => name2
[3] => name3
[4] => name4
)
Upvotes: 0
Reputation: 578
Just do following code :
$array = array( /* added data */ );// your original array
$tempArray = array();
foreach ($array as $key => $value) {
$tempArray[$key] = $value['camera_name'];
}
print_r($tempArray);
Not the output will be
$newArray (
[1]( [camera_name] = name1 )
[2]( [camera_name] = name2 )
[3]( [camera_name] = name3 )
[4]( [camera_name] = name4 )
)
Upvotes: 0
Reputation: 522636
$array = array_map(function (array $item) { return $item['camera_name']; }, $array);
As of PHP 5.5:
$array = array_column($array, 'camera_name');
Upvotes: 1
Reputation: 2128
try this..
$newArray = array();
$i =1;
foreach($array as $key => $value){
$newArray[$i] = $value;
$i++;
}
print_r($newArray);
Upvotes: 0