This question already has answers here:
Push elements from one array into rows of another array (one element per row)
(4 answers)
Closed 8 years ago.
Hi i have an array like this
Array
(
[0] => Array
(
[employeename] => abc
)
[1] => Array
(
[employeename] => def
)
)
Array
(
[0] => 1
[1] => 3
)
I need the second array value to be set in first array like this
Array
(
[0] => Array
(
[employeename] => abc
[othername] => 1
)
[1] => Array
(
[employeename] => def
[othername] => 3
)
)
Any Help Will be appreciated , Thanks In Advance :)
Try this :
<?php
$array1 = array(array("employeename" => "abc"),
array("employeename" => "def")
);
$array2 = array(1,3);
foreach($array1 as $key=>$val){
$array1[$key]["othername"] = $array2[$key];
}
echo "<pre>";
print_r($array1);
?>
Related
This question already has answers here:
Is there a function to extract a 'column' from an array in PHP?
(15 answers)
Closed 7 months ago.
If I have an array $array like this:
Array (
[0] => Array (
[id] => 11
[name] => scifi
)
[1] => Array (
[id] => 12
[name] => documetary
)
[2] => Array (
[id] => 10
[name] => comedy
)
)
How could I turn it into simply:
Array ( 11, 12, 10 ) with no key value pairs.
I am trying to extract only the id from each array and add them into 1 array. I am trying it with a foreach;
$ids = [];
if ( $array ) {
foreach ( $array as $item ) {
$ids[] = $term->id;
}
}
print_r($ids);
It just returns 3 empty arrays Array ( [0] => [1] => [2] => )
Using a loop, you can do this:
$arr1 = [
['id'=>11,'name'=>'scifi'],
['id'=>12,'name'=>'documentry'],
['id'=>10,'name'=>'comedy'],
];
$arr2 = [];
foreach($arr1 as $internal){
array_push($arr2,$internal['id']);
}
print_r($arr2);
Here we access all internal array's ID's and insert them into a new array.
This question already has answers here:
How to remove duplicate values from a multi-dimensional array in PHP
(18 answers)
Closed 6 years ago.
I have an array like this:
Array
(
[0] => Array
(
[0] => Array
(
[Foo] => FooBar
)
)
[1] => Array
(
[0] => Array
(
[Foo] => BarFoo
)
)
[2] => Array
(
[0] => Array
(
[Foo] => FooFoo
)
)
[3] => Array
(
[0] => Array
(
[Foo] => FooFoo
)
)
)
I basically want to be able to look at [2] and [3] and be able to merge those two together since their values are the same. Basically I just don't want to double count. Is there a simple way of doing this while looping through?
You can try this
$unique_array = array_map("unserialize",
array_unique(array_map("serialize", $your_array)));
This question already has answers here:
Implode a column of values from a two dimensional array [duplicate]
(3 answers)
Closed 7 months ago.
I have array in following format:
Array
(
[sales] => Array
(
[0] => Array
(
[0] => 1
[1] => 6
)
[1] => Array
(
[0] => 2
[1] => 8
)
[2] => Array
(
[0] => 3
[1] => 25
)
[3] => Array
(
[0] => 4
[1] => 34
)
)
)
Using:
foreach ($data['sales'] as $k => $row) {
$list = implode(",",$row);
}
I get the following as output:
1,62,83,254,34
But I only need the second values from each subArray. The expected result needs to be:
6,8,25,34
How can I remove the first set of values?
Just grab the first column from your array with array_column(), so that you end up with an array, e.g.
Array (
[0] => 6
[1] => 8
[2] => 25
[3] => 34
)
And implode() it then as you already did, e.g.
echo implode(",", array_column($data["sales"], 1));
output:
6,8,25,34
I like array_column() but if you don't have PHP >= 5.5.0:
$list = implode(',', array_map(function($v) { return $v[1]; }, $data['sales']));
Or with the foreach:
foreach ($data['sales'] as $row) {
$list[] = $row[1];
}
$list = implode(',', $list);
This question already has answers here:
How to remove duplicate values from a multi-dimensional array in PHP
(18 answers)
Closed 7 years ago.
I have these arrays i want to remove remove duplicate links from my array how can i do this please help
I have many links in my array first array have no key and others have key all links have unique ids i want to remove same id links and submit it into mysql. all work is done now i am stuck in this duplicate issue please kindly help me.
Array
(
[0] => mainlink
[apple] => Array
(
[0] => http://apple1.to/getac/fdjpkb9xdixq
[1] => http://apple1.to/getac/fdjpkb9xdixq
[2] => http://apple1.to/getac/fdjpkb9xdixq
[3] => http://apple2.to/getac/fdjpkb9xdixq
[4] => http://apple2.to/getac/fdjpkb9xdixq
[5] => http://apple2.to/getac/fdjpkb9xdixq
)
[banana] => Array
(
[0] => http://banana1.to/getac/fdjpkb9xdixq
[1] => http://banana2.to/getac/fdjpkb9xdixq
[2] => http://banana1.to/getac/fdjpkb9xdixq
[3] => http://banana2.to/getac/fdjpkb9xdixq
)
)
Thanks.
I want this result:
Array
(
[0] => mainlink
[apple] => Array
(
[0] => http://apple1.to/getac/fdjpkb9xdixq
[3] => http://apple2.to/getac/fdjpkb9xdixq
)
[banana] => Array
(
[0] => http://banana1.to/getac/fdjpkb9xdixq
[1] => http://banana2.to/getac/fdjpkb9xdixq
)
)
This should work for you:
Just loop through your array with array_map() and check if it is an array or not. If yes just return the unique array with array_unique(), else just return the value.
<?php
$unique = array_map(function($v){
if(is_array($v))
return array_unique($v);
return $v;
}, $array);
print_r($unique);
?>
This question already has answers here:
Built-in PHP function to reset the indexes of an array?
(4 answers)
Closed 8 years ago.
I want to change the index of an array after doing some operations
My actual output is
Array
(
[0] => Array
(
[0] => 4
[1] => 6
)
[2] => Array
(
[0] => 1
[1] => 7
)
[5] => Array
(
[0] => 1
[1] => 7
)
)
I want to be something like this
Array
(
[0] => Array
(
[0] => 4
[1] => 6
)
[1] => Array
(
[0] => 1
[1] => 7
)
[2] => Array
(
[0] => 1
[1] => 7
)
)
How to achieve this in php???? Thanks in advance
Extract only the values to a new array and the keys will be indexed from 0:
$array = array_values($array);
The array_values() function returns only values from array.
Thus, resetting all the array keys to numeric starting from 0, 1, 2, ...
You can do it using
$array = array_values($array);
http://php.net/manual/en/function.array-values.php
you can use the "array_values" Function for that.
Please refer this link http://www.php.net/manual/en/language.types.array.php