何らかの理由でpreg_match('/^[-+*/^()\s0-9]+$/', $formula
I throwを使用しているときUnknown modifier '^'
に実行しようとすると7 + 6c
、私の知る限り false が返されますか?
完全なスニペット
if (! preg_match('/^[-+*/^()\s0-9]+$/i', $formula ))
{
$this->log(array('fatal', $formula, 'Contains unacceptable values...'));
}
$formula = '(7 + 6) / 9'; # 1
$formula = '7 * 6 ^ 2' # 252
$formula = '1c + 2c' # boom, but no trap =/