3
我的意思是將其轉換成:'1+1'
爲此:1+1
。如何將字符串轉換爲包含數學運算的數字?
從來就發現this answer,是說你可以對字符串進行數學運算,例如:
$num = "10" + 1;
但it's不一樣在這裏,因爲的數學運算符是內字符串。
我的意思是將其轉換成:'1+1'
爲此:1+1
。如何將字符串轉換爲包含數學運算的數字?
從來就發現this answer,是說你可以對字符串進行數學運算,例如:
$num = "10" + 1;
但it's不一樣在這裏,因爲的數學運算符是內字符串。
如果你的方程留下非常簡單,你可以做類似如下的功能:
function calcString($str)
{
$patten = '/[\*\/\+-]/';
preg_match($patten,$str, $operator);
$arr = preg_split($patten,$str);
switch($operator[0]){
case '-':
return $arr[0] - $arr[1];
case '+':
return $arr[0] + $arr[1];
case '*':
return $arr[0] * $arr[1];
case '/':
return $arr[0]/$arr[1];
}
}
$num = "10+2";
echo calcString($num); // Output = 12
// Or
$num = "10-2";
echo calcString($num); // Output = 8
// Or
$num = "10*2";
echo calcString($num); // Output = 20
// Or
$num = "10/2";
echo calcString($num); // Output = 5
當然,你可以把功能是某種輔助類的。