<?php
$input = '567*7+546-111=';
$input2 = '243+257-300+55=';
$number = 0;
$result = 0;
$op = '';
for($i = 0; $i < $inputLength; $i++) {
//echo "Result-[{$result}], Number-[{$number}], OP-[{$op}], char-[{$char}]\n";
$number = $number * 10 + $char;
//echo "Result-[{$result}], Number-[{$number}], OP-[{$op}], char-[{$char}]\n";
} elseif ($char == '*' || $char == '+' || $char == '-' || $char == '=') {
if ($op == '') {
$number = 0;
//echo "Result-[{$result}], Number-[{$number}], OP-[{$op}], char-[{$char}]\n";
}
elseif ($op != '') {
if ($op == '*') {
$result *= $number;
} elseif ($op == '+') {
$result += $number;
} elseif ($op == '-') {
$result -= $number;
}
//echo "Result-[{$result}], Number-[{$number}], OP-[{$op}], char-[{$char}]\n";
}
$op = $char;
$number = 0;
echo "Result-[{$result}], Number-[{$number}], OP-[{$op}], char-[{$char}]\n";
if ($op == '=') {
echo "{$input}{$result}";
}
}
}
PD9waHAKIAplcnJvcl9yZXBvcnRpbmcoLTEpOwptYl9pbnRlcm5hbF9lbmNvZGluZygndXRmLTgnKTsKCiRpbnB1dCA9ICc1NjcqNys1NDYtMTExPSc7CiRpbnB1dDIgPSAnMjQzKzI1Ny0zMDArNTU9JzsKJGlucHV0TGVuZ3RoID0gbWJfc3RybGVuKCRpbnB1dCk7CgokbnVtYmVyID0gMDsKJHJlc3VsdCA9IDA7CiRvcCA9ICcnOwoKZm9yKCRpID0gMDsgJGkgPCAkaW5wdXRMZW5ndGg7ICRpKyspIHsKCQoJJGNoYXIgPSBtYl9zdWJzdHIoJGlucHV0LCAkaSwgMSk7CgkvL2VjaG8gIlJlc3VsdC1beyRyZXN1bHR9XSwgTnVtYmVyLVt7JG51bWJlcn1dLCBPUC1beyRvcH1dLCBjaGFyLVt7JGNoYXJ9XVxuIjsKCQoJaWYgKGlzX251bWVyaWMoJGNoYXIpKSB7CgkJJG51bWJlciA9ICRudW1iZXIgKiAxMCArICRjaGFyOwoJCS8vZWNobyAiUmVzdWx0LVt7JHJlc3VsdH1dLCBOdW1iZXItW3skbnVtYmVyfV0sIE9QLVt7JG9wfV0sIGNoYXItW3skY2hhcn1dXG4iOwoJfSBlbHNlaWYgKCRjaGFyID09ICcqJyB8fCAkY2hhciA9PSAnKycgfHwgJGNoYXIgPT0gJy0nIHx8ICRjaGFyID09ICc9JykgewoJCWlmICgkb3AgPT0gJycpIHsKCQkJJHJlc3VsdCA9IGludHZhbCgkbnVtYmVyKTsKCQkJJG51bWJlciA9IDA7CgkJCS8vZWNobyAiUmVzdWx0LVt7JHJlc3VsdH1dLCBOdW1iZXItW3skbnVtYmVyfV0sIE9QLVt7JG9wfV0sIGNoYXItW3skY2hhcn1dXG4iOwoJCX0KCQllbHNlaWYgKCRvcCAhPSAnJykgewoJCQlpZiAoJG9wID09ICcqJykgewoJCQkJJHJlc3VsdCAqPSAkbnVtYmVyOwoJCQl9IGVsc2VpZiAoJG9wID09ICcrJykgewoJCQkJJHJlc3VsdCArPSAkbnVtYmVyOwoJCQl9IGVsc2VpZiAoJG9wID09ICctJykgewoJCQkJJHJlc3VsdCAtPSAkbnVtYmVyOwoJCQl9CgkJCS8vZWNobyAiUmVzdWx0LVt7JHJlc3VsdH1dLCBOdW1iZXItW3skbnVtYmVyfV0sIE9QLVt7JG9wfV0sIGNoYXItW3skY2hhcn1dXG4iOwoJCX0KCQkkb3AgPSAkY2hhcjsKCQkkbnVtYmVyID0gMDsKCQllY2hvICJSZXN1bHQtW3skcmVzdWx0fV0sIE51bWJlci1beyRudW1iZXJ9XSwgT1AtW3skb3B9XSwgY2hhci1beyRjaGFyfV1cbiI7CgkJaWYgKCRvcCA9PSAnPScpIHsKCQkJZWNobyAieyRpbnB1dH17JHJlc3VsdH0iOwoJCQlleGl0OwoJCX0KCQkKCX0KfQ==
Result-[567], Number-[0], OP-[*], char-[*]
Result-[3969], Number-[0], OP-[+], char-[+]
Result-[4515], Number-[0], OP-[-], char-[-]
Result-[4404], Number-[0], OP-[=], char-[=]
567*7+546-111=4404