- var_dump: documentation ( source)
- array_pop: documentation ( source)
<?php
$the_data = [2,"(){[]()}","([)]"];
function getbalance($values){
$result = array();
for($l=1;$l<=$values[0];$l++){
$balance = array();
$value = $values[$l];
for($i=0; $i < strlen($value); $i++){
if( $value[$i] == "(" || $value[$i] == "{" || $value[$i] == "[" ){
$balance[] = $value[$i];
}elseif( $value[$i] == ")" ){
if( array_pop($balance) !== "(" ){
break;
}
}elseif( $value[$i] == "}" ){
if( array_pop($balance) !== "{" ){
break;
}
}elseif( $value[$i] == "]" ){
if( array_pop($balance) !== "[" ){
break;
}
}
}
if( count($balance) == 0 ){
$result[] = "YES";
}else{
$result[] = "NO";
}
}
return $result;
}
echo "Result:\n";
// echo array_pop($the_data);
var_dump(getbalance($the_data));