<?php
function comparer($param, $compare, $param_val)
{
switch ($compare){
case '==': return $param == $param_val;
case '!=': return $param != $param_val;
case '<=': return $param <= $param_val;
case '>=': return $param >= $param_val;
case '>': return $param > $param_val;
case '<': return $param < $param_val;
default: return FALSE;
}
}
function test($a)
{
list($param, $compare, $param_val) = $a; .(comparer($param, $compare, $param_val) ? 'true' : 'false')
.PHP_EOL;
}
/* ... */
test
(array('foo', '==', 'foo')); test
(array('foo', '==', 'bar')); test
(array(3, '==', '3')); test
(array(10, '>=', 9)); test
(array(10, '>=', 20));
PD9waHAKICAgIGZ1bmN0aW9uIGNvbXBhcmVyKCRwYXJhbSwgJGNvbXBhcmUsICRwYXJhbV92YWwpCiAgICB7CiAgICAgIHN3aXRjaCAoJGNvbXBhcmUpewogICAgICAgIGNhc2UgJz09JzogcmV0dXJuICRwYXJhbSA9PSAkcGFyYW1fdmFsOwogICAgICAgIGNhc2UgJyE9JzogcmV0dXJuICRwYXJhbSAhPSAkcGFyYW1fdmFsOwogICAgICAgIGNhc2UgJzw9JzogcmV0dXJuICRwYXJhbSA8PSAkcGFyYW1fdmFsOwogICAgICAgIGNhc2UgJz49JzogcmV0dXJuICRwYXJhbSA+PSAkcGFyYW1fdmFsOwogICAgICAgIGNhc2UgJz4nOiByZXR1cm4gJHBhcmFtID4gJHBhcmFtX3ZhbDsKICAgICAgICBjYXNlICc8JzogcmV0dXJuICRwYXJhbSA8ICRwYXJhbV92YWw7CiAgICAgICAgZGVmYXVsdDogcmV0dXJuIEZBTFNFOwogICAgICB9CiAgICB9CiAgICAKICAgIGZ1bmN0aW9uIHRlc3QoJGEpCiAgICB7CiAgICAgICAgbGlzdCgkcGFyYW0sICRjb21wYXJlLCAkcGFyYW1fdmFsKSA9ICRhOwogICAgICAgIGVjaG8gaW1wbG9kZSgnICcsICRhKSAuICcgPSAnCiAgICAgICAgICAgICAuKGNvbXBhcmVyKCRwYXJhbSwgJGNvbXBhcmUsICRwYXJhbV92YWwpID8gJ3RydWUnIDogJ2ZhbHNlJykKICAgICAgICAgICAgIC5QSFBfRU9MOwogICAgfQoKICAgIC8qIC4uLiAqLwogICAgdGVzdChhcnJheSgnZm9vJywgJz09JywgJ2ZvbycpKTsKICAgIHRlc3QoYXJyYXkoJ2ZvbycsICc9PScsICdiYXInKSk7CiAgICB0ZXN0KGFycmF5KDMsICc9PScsICczJykpOwogICAgdGVzdChhcnJheSgxMCwgJz49JywgOSkpOwogICAgdGVzdChhcnJheSgxMCwgJz49JywgMjApKTs=