3v4l.org

run code in 300+ PHP versions simultaneously
<?php $condition = array( 'AND', array( array( 'field' => 'grid_enable', 'compare' => '==', 'value' => 1 ), ), array( array( 'field' => 'grid_column', 'compare' => '>=', 'value' => 3 ), ), array( 'OR', array( 'field' => 'filter', 'compare' => '!=', 'value' => 1 ), array( 'field' => 'align', 'compare' => '==', 'value' => 'left' ) ), array( array( 'field' => 'grid_gutter', 'compare' => '==', 'value' => 'large' ), ), ); print_r($condition); $final_result = ''; $double = false; foreach($condition as $k=>$v){ $result = []; if(!is_array($v)){ $operator_out = $v; }else{ foreach($v as $k1=>$v1){ if(!is_array($v1)){ $operator_inn = $v1; }else{ $result[] = implode(' ',array_values($v1)); } } } if(count($result) == 1){ if($double){ $final_result.= " ".$operator_out." ".$result[0]; }else{ $final_result.= $result[0]." ".$operator_out." "; } } else if(count($result) == 2){ $final_result.= "(".implode(" $operator_inn " , $result).")"; $double= true; } } echo $final_result; ?>
Output for git.master, git.master_jit, rfc.property-hooks
Array ( [0] => AND [1] => Array ( [0] => Array ( [field] => grid_enable [compare] => == [value] => 1 ) ) [2] => Array ( [0] => Array ( [field] => grid_column [compare] => >= [value] => 3 ) ) [3] => Array ( [0] => OR [1] => Array ( [field] => filter [compare] => != [value] => 1 ) [2] => Array ( [field] => align [compare] => == [value] => left ) ) [4] => Array ( [0] => Array ( [field] => grid_gutter [compare] => == [value] => large ) ) ) grid_enable == 1 AND grid_column >= 3 AND (filter != 1 OR align == left) AND grid_gutter == large

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
139.94 ms | 409 KiB | 5 Q