PDA

View Full Version : سوال: استفاده از html entities بجای محاسبه گرها



omidabedi
دوشنبه 05 اسفند 1392, 13:03 عصر
سلام
این قسمت از کد وقتی میخوام جایگزین کنم علامت هارو بجای هم فقط if اخری یعنی اخرین جایگزینی رو ملاک قرار میده و دیگه رندوم نیست




for($i=0;$i<10;$i++){ $cal= array('0'=>'*','1'=>'/','2'=>'+','3'=>'-'); $num= rand(0,100); $num2= rand(0,100); $calc= $cal[rand(0,3)]; if($calc='/') $calc2='&divide;'; if($calc='*') $calc2='&times;'; if($calc='-') $calc2='-'; if($calc='+') $calc2='+'; echo $calc; }



خروجیش این میشه مثلا:


1+10
5+3
9+3
25+45
.
.
.


مشکلش کجاست!!

omidabedi
دوشنبه 05 اسفند 1392, 13:08 عصر
نمیدونم چرا syntax highlighter php کار نمیکنه!!
بنظرم بهتر بود توی کامنت ها هم امکان استفاده از syntax highlighter بود

omidabedi
دوشنبه 05 اسفند 1392, 14:32 عصر
یه مورد دیگه اینکه الان من میخوام تعدادی عدد رندوم با محاسبه گر رندوم محاسبه بشن.
الان جواب رو چجوری بدست بیارم؟چونکه وقتی echo میکنم بجای اینکه جمع کنه مثلا میاد خود علامت بعلاوه بر میزاره





for($i=0;$i<33;$i++){
$cal= array('0'=>"*",'1'=>"+",'2'=>"-");
$num= rand(0,50);
$num2= rand(0,50);
$calc= $cal[rand(0,2)];
$answ= $num.$calc.$num2.'<br />';
echo $answ;
}

MMSHFE
دوشنبه 05 اسفند 1392, 15:09 عصر
باید عبارت رو با eval مورد ارزیابی قرار بدین نه اینکه echo کنید. مثال:


for($i = 0; $i < 33; $i++) {
$cal = array('0'=>"*",'1'=>"+",'2'=>"-");
$num1= rand(0,50);
$num2= rand(0,50);
$calc = $cal[rand(0,2)];
$code = '$answ = $num1' . $calc . '$num2;';
eval ($code);
echo '<p>' . $num1 . $calc . $num2 . '=' . $answ . '</p>';
}