Create new array from two array in with i will count the number of occurence some values in php
Create new array from two array in with i will count the number of occurence some values in php
I have two arrays
The first array:
Array ( [0] => stdClass Object ( [idConsultant] => 291 ) [1] => stdClass Object ( [idConsultant] => 292 ) [2] => stdClass Object ( [idConsultant] => 293 ) )
The second array:
Array ( [0] => stdClass Object ( [idConsultant] => 291 ) [1] => stdClass Object ( [idConsultant] => 291 ) [2] => stdClass Object ( [idConsultant] => 292 ) )
I need a function how will return me, foreach value in the first array the number of occurrence in the second.
The result i am looking for is:
Array ( [0] => stdClass Object ( [291] => 2 ) [1] => stdClass Object ( [292] => 1 ) [2] => stdClass Object ( [293] => 0 ) )
Thank you.
1 Answer
1
there is a function called array_count_values
- which is pretty handy in your situation
array_count_values
something like the following should work (assuming your arrays are named arrA
and arrB
arrA
arrB
$arrCntValues = array_count_values(
array_merge
(
array_column($arrA, 'idConsultant'),
array_column($arrB, 'idConsultant')
)
);
print_r($arrCntValues);
and if you really need it like your desired structure just iterate over it
$arrObjects = ;
foreach($arrCntValues AS $key => $val)
$obj = new stdClass();
$obj->$key = $val;
$arrObjects = $obj;
print_r($arrObjects);
Thanks for contributing an answer to Stack Overflow!
But avoid …
To learn more, see our tips on writing great answers.
Required, but never shown
Required, but never shown
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.
What have you tried so far? post your code also here.
– Leena Patel
Sep 7 '18 at 5:00