Просмотр поста

.
Koenig
(\/)____o_O____(\/)

ДоХтор, бредовато, но работает

быдло (+/-)

<?php

function parser($str) {
    preg_match('#(.*)(\+|\-|\*|\/)(.*)#', $str, $matches);

    return array($matches[1], $matches[3], str_replace(array('+', '-', '*', '/'), array('plus', 'minus', 'multi', 'divide'), $matches[2]));
}

function proc($args) {
    return $args[2]($args[0], $args[1]);
}

function plus($a, $b) {
    return $a + $b;
}

function minus($a, $b) {
    return $a - $b;
}

function multi($a, $b) {
    return $a * $b;
}

function divide($a, $b) {
    return $b > 0 ? ($a / $b) : 'division by zero';
}

$args = parser('1 + 3');
echo proc($args);