यस समाधानमा, हामी स्ट्रिङबाट गणित अभिव्यक्ति कसरी गणना गर्ने सिक्नेछौं।
eval प्रयोग नगर्नुहोस् किनभने eval ले कोडको पूर्ण रेखाहरू अपेक्षा गर्दछ, न केवल टुक्राहरू।
समाधान १.
$ma = "2+10";
if(preg_match('/(\d+)(?:\s*)([\+\-\*\/])(?:\s*)(\d+)/', $ma, $matches) !== FALSE){
$operator = $matches[2];
switch($operator){
case '+':
$p = $matches[1] + $matches[3];
break;
case '-':
$p = $matches[1] - $matches[3];
break;
case '*':
$p = $matches[1] * $matches[3];
break;
case '/':
$p = $matches[1] / $matches[3];
break;
}
echo $p;
}