3v4l.org

run code in 300+ PHP versions simultaneously
<?php $Rules = array( "Outlook" => array("Sunny" => array("No" => 2), "Overcast" => array("Yes" => 1), "Rainy" => array("Yes" => 1) ), "Temp" => array("Hot" => array("No" => 2, "Yes" => 1), "Mild" => array("Yes" => 1) ) ); $filling = array(); $fill_play = array(); foreach($Rules as $key => $value){ $in = 0; $in_play = 0; foreach($value as $keys => $values){ $key_value = array_keys($values); for($j = 0; $j < count($key_value); $j++){ for($i = 0; $i < $values[$key_value[$j]]; $i++){ $fill_play[$key][$in_play++] = $key_value[$j]; $filling[$key][$in++] = $keys; } } } } $yes_no = array(); for($i = 0; $i < 4; $i++) $yes_no[$i] = 0; foreach($fill_play as $key => $value){ for($i = 0; $i < 4; $i++){ if($value[$i] == 'No') $yes_no[$i] -= 1; else $yes_no[$i] += 1; } } foreach($yes_no as $key => $value){ if($value >= 0) $filling['Play'][$key] = 'Yes'; else $filling['Play'][$key] = 'No'; } echo '<pre>'; print_r($filling); echo '</pre>'; ?>

preferences:
24.07 ms | 405 KiB | 5 Q