3v4l.org

run code in 300+ PHP versions simultaneously
<?php $messages = array( 'message1'=>array( 'type'=>'voice', 'call-id'=>'11', 'id'=>'message1' ), 'message2'=>array( 'type'=>'voice', 'call-id'=>'44', 'id'=>'message2' ), 'message3'=>array( 'type'=>'text', 'call-id'=>'44', 'id'=>'message3' ), 'message4'=>array( 'type'=>'text', 'call-id'=>'55', 'id'=>'message4' ), 'message5'=>array( 'type'=>'voice', 'call-id'=>'55', 'id'=>'message5' ), ); $arr2 = array_msort($messages, array('call-id'=>SORT_ASC, 'type'=>SORT_ASC)); print_r($arr2); foreach ($messages as $message => $value) { if(in_array($value['call-id'], $newArray)) { $keyToDelete[] = $message; } else { $newArray[$value['call-id']] = $value['call-id']; } } foreach($keyToDelete as $key => $val) { if($messages[$val]['type'] == 'voice') { unset($messages[$val]); } } print_r($messages);

preferences:
40.38 ms | 402 KiB | 5 Q