$disp = ( $a ) ? "TRUE":"FALSE";
echo "<table><tr>\n<td></td>\n";
$max_eval = 8;
for( $i = 0; $i <$max_eval; $i++ ) {
$value = set_eval( $i, $value, $disp );
$eval_disp[$i] = $disp;
echo " <td>", $disp, "</td>\n";
}
echo "</tr>\n";
$ddata = array();
for( $i_value = 0; $i_value <6; $i_value++)
{
$value = set_value( $i_value, $disp );
echo sprintf( "<tr>\n <td>%s</td>\n", $disp );
for( $i_eval = 0; $i_eval <$max_eval; $i_eval++)
{
$result = set_eval( $i_eval, $value, $disp );
$ddata[ $i_value ][ $i_eval ] = $result;
echo " <td>", $result, "</td>\n";
}
echo "</tr>\n";
}
echo "</table>";
function set_eval( $i, $value, &$disp )
{
switch( $i )
{
case "0":
$result = ( $value )? "TRUE":"FALSE";
$disp = "( \$value )?";
break;
case "1":
$result = ( empty( $value ) )? "TRUE":"FALSE";
$disp = "empty(\$value)";
break;
case "2":
$result = ( isset( $value ) )? "TRUE":"FALSE";
$disp = "isset(\$value)";
break;
case "3":
$result = ( $value == '' ) ? "TRUE":"FALSE";
$disp = "\$value==''";
break;
case "4":
$result = ( "$value" == "" ) ? "TRUE":"FALSE";
$disp = "\"\$value\"==\"\"";
break;
case "5":
$result = ( $value === FALSE ) ? "TRUE":"FALSE";
$disp = "\$value===FALSE";
break;
case "6":
$result = ( $value === NULL ) ? "TRUE":"FALSE";
$disp = "\$value===NULL";
break;
case "7": $result = ( $value === "" ) ? "TRUE":"FALSE"; $disp = "\$value===\"\""; break; default:
$result = "?";
$disp = "???";
break;
}
return $result;
}
function set_value( $i, &$disp )
{
switch( $i )
{
case "0":
$value = NULL;
$disp = "NULL";
break;
case "1":
$value = FALSE;
$disp = "FALSE";
break;
case "2":
$value = 0;
$disp = "0";
break;
case "3":
unset( $value );
$disp = "unset";
break;
case "4":
$value = "";
$disp = "\"\"";
break;
case "5":
$value = '';
$disp = "''";
break;
default:
$value = "?";
$disp = "???";
break;
}
return $value;
}
|