플러그인 31: 표현식 값 구하기

2484 단어 Stringdownload
<?php // Plug-in 31: Evaluate Expression

// This is an executable example with additional code supplied
// To obtain just the plug-ins please click on the Download link

echo "<font face='Courier New'><pre>";
$s = "TAN(64)";
echo "$s\t\t\t= " . PIPHP_EvaluateExpression($s) . "
"; $s = "sqrt(77.3) / 99"; echo "$s\t\t= " . PIPHP_EvaluateExpression($s) . "
"; $s = "1 + 2 / 3 * 4 - 5"; echo "$s\t= " . PIPHP_EvaluateExpression($s) . "
"; $s = "log(100)"; echo "$s\t\t= " . PIPHP_EvaluateExpression($s) . "
"; $s = "pi()"; echo "$s\t\t\t= " . PIPHP_EvaluateExpression($s) . "
"; function PIPHP_EvaluateExpression($expr) { // Plug-in 31: Evaluate Expression // // This plug-in accepts a string containing an arithmetic // expression and returns the result of evaluating it. // Over 20 functions are also supported. The argument // required is: // // $expr: The arithmetic expression $f1 = array ('abs', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'cos', 'cosh', 'exp', 'expm1', 'log', 'log10', 'log1p', 'pi', 'pow', 'sin', 'sinh', 'sqrt', 'tan', 'tanh'); $f2 = array ('!01!', '!02!', '!03!', '!04!', '!05!', '!06!', '!07!', '!08!', '!09!', '!10!', '!11!', '!12!', '!13!', '!14!', '!15!', '!16!', '!17!', '!18!', '!19!', '!20!', '!21!', '!22!'); $expr = strtolower($expr); $expr = str_replace($f1, $f2, $expr); $expr = preg_replace("/[^\d\+\*\/\-\.(),! ]/", '', $expr); $expr = str_replace($f2, $f1, $expr); // Uncomment the line below to see the sanitized expression // echo "$expr<br />
"; return eval("return $expr;"); } ?>

플러그인 설명:
플러그인은 수학적 표현식을 나타내는 문자열을 적용하고 매개변수가 필요한 표현식의 결과를 반환합니다.
$expr 수학 표현식을 포함하는 문자열

좋은 웹페이지 즐겨찾기