çıkar değilse iki dizi $array1
ve ben dinamik olsun $array2
var ve karşılaştırmak gerekiriki boyutlu bir dizinin değerlerini karşılaştırın ve
$array1 = Array
(
[0] => Array
(
[hour] => 10
[activity] => Array
(
[0] => Array
(
[activity_id] => 1
[cnt] => 2
)
[1] => Array
(
[activity_id] => 2
[cnt] => 1
)
)
)
[1] => Array
(
[hour] => 11
[activity] => Array
(
)
)
[2] => Array
(
[hour] => 12
[percentage] => 0
[activity] => Array
(
[0] => Array
(
[activity_id] => 2
[cnt] => 5
)
[1] => Array
(
[activity_id] => 3
[cnt] => 2
)
)
)
);
$array2 = Array
(
[0] => Array
(
[id] => 1
[name] => Phone Calls
[readable] => 1
[status] => active
)
[1] => Array
(
[id] => 2
[name] => Meeting With Customer
[readable] => 1
[status] => active
)
[2] => Array
(
[id] => 3
[name] => Others Works
[readable] => 1
[status] => active
)
);
benziyor yerleştirin. $array2['id']
halinde
$array1['activity']
için dizi ['activity_id'=>$array2['id'],'cnt'=>0]
eklemek (yani "activity_id") $array1["activity"]
değildir. Ne ben denedim ben hariç gibi çalışmıyor
$finalArray = array();
foreach($array1 as $arr1) {
foreach($array2 as $arr2) {
if(!in_array($arr2['id'], $arr1['activity'])) {
$array = ['activity_id'=>$arr2['id'], 'cnt'=>0];
}
array_push($arr1['activity'], $array);
unset($array);
}
array_push($finalArray, $result);
}
print_r($finalArray);
in_array()
fonksiyonudur ya da yanlış bir şekilde yapmaya çalışıyorum
$result = Array
(
[0] => Array
(
[hour] => 10
[activity] => Array
(
[0] => Array
(
[activity_id] => 1
[cnt] => 2
)
[1] => Array
(
[activity_id] => 2
[cnt] => 1
)
[2] => Array
(
[activity_id] => 3
[cnt] => 0
)
)
)
[1] => Array
(
[hour] => 11
[activity] => Array
(
[0] => Array
(
[activity_id] => 1
[cnt] => 0
)
[1] => Array
(
[activity_id] => 2
[cnt] => 0
)
[2] => Array
(
[activity_id] => 3
[cnt] => 0
)
)
)
[2] => Array
(
[hour] => 12
[percentage] => 0
[activity] => Array
(
[0] => Array
(
[activity_id] => 1
[cnt] => 0
)
[1] => Array
(
[activity_id] => 2
[cnt] => 5
)
[2] => Array
(
[activity_id] => 3
[cnt] => 2
)
)
)
);
gibi
Benim sonuç olmalıdır. Birisi bana bu konuda yardımcı olabilir mi?
konusunda çizgiyi
değiştirmek tamam . Bu durumda, ihtiyacınız olan şey: http://php.net/manual/fr/function.array-key-exists.php. Haklıysam tanışalım. –
İlginiz için teşekkür ederiz. $ Sonuç dizisinde görebilirsiniz $ sonuç [0] [etkinlik] eklendi [2] => Dizi ( [activity_id] => 3 [cnt] => 0 ). benim çalışma dizimi ve $ sonuç dizisinin anlamanız sizin için kolay olabileceğini görüyorsunuz. $ sonuç dizisi ihtiyacım olan çıktı. –
Demek istediğim: Amacınız $ arr1 ['activity'] 'dizisinde veya bir değerindeki bir anahtarla eşleşiyor mu? –