<?php $args = array( 'a' => array( 'zebra' => 1, ), 'b' => array( 'zebra' => 0, ), 'c' => array( 'zebra' => 0, ), 'd' => array( 'zebra' => 0, ), 'e' => array( 'zebra' => 1, ), ); $zeros = []; $ones = []; foreach($args as $let=>$arg){ if ($arg['zebra'] === 1) { $ones[] = $let; } else if ($arg['zebra'] === 0) { $zeros[] = $let; } } $res = []; if(abs(count($zeros) - count($ones)) === 1) { if (count($ones) > count($zeros)){ foreach($zeros as $ind=>$let){ $res[$ones[$ind]] = ['zebra' => 1]; $res[$let] = ['zebra' => 0]; $tmp = $ind; } $res[$ones[$tmp+1]] = ['zebra' => 1]; } else if (count($ones) < count($zeros)){ foreach($ones as $ind=>$let){ $res[$zeros[$ind]] = ['zebra' => 0]; $res[$let] = ['zebra' => 1]; $tmp = $ind; } $res[$zeros[$tmp+1]] = ['zebra' => 0]; } } print_r($res);
You have javascript disabled. You will not be able to edit any code.