}
}
}
class ExpressionCharater extends Expression
{
public function interpreter($str)
{
return strtoupper($str);
}
}
class Interpreter
{
public function execute($string)
{
$expression = null;
for ($i = 0; $i < strlen($string); $i++) {
$temp = $string[$i];
switch (true) {
case is_numeric($temp):
$expression = new ExpressionNum();
break;
default:
$expression = new ExpressionCharater();
}
echo $expression->interpreter($temp);
}
}
}
$obj = new Interpreter();
$obj->execute("12345abc");