2013-03-20 21 views
-1

我有這樣的:PHP的比較區間數

$values=array("10","30","40") 
    $real_value=22; 

我需要的,比較,如果這個數字it's的$值數組列表之間的最大或最小例如得到這個,22個it's更加大了10和30多痘痘,沒有繼續與包括並獲得間隔

我試試這個,但沒有劃定區間

for ($i=0;$i<count($values);$i++) 
{ 


if ($real_value>$values[$i]) 
{ 
print "".$values.""; 
} 

} 

我需要得到例如爲22號的real_value 3個值0,因爲22 it's超過10個,但不超過30或50以上和10至30

我不知道怎麼弄這個,我希望從社區

+0

首先你需要按升序排列,然後,比較你對他們的價值,一旦你找到了一個價值是比你的值數組值進行排序,然後,打破循環,並打印... – 2013-03-20 21:17:12

+0

和負爲什麼呢? – user2174831 2013-03-20 21:18:38

+0

什麼是負面...? – 2013-03-20 21:20:16

回答

0

轉到一些想法間隔it's :

for ($i=0;$i<count($values);$i++) 
{ 


    if ($real_value>$values[$i]) 
    { 
     if($1>0){ 
     print $values[$i-1]." - ".$values[$i-1]; 
     }else{ 
     print $values[$i]; 
     } 
    break; 
    } 

} 
0

如果我理解正確的話,你只需要改變你的病情,並打破當它是true

if ($real_value <= $values[$i]) 
{ 
    print $values[$i]; 
    break; 
} 
+0

沒有,如果我需要比較22號,並有例如3號和比較it's 22我需要把這個數字到數字的間隔在22和特別大的22,在這種情況下,22個it's成數我10和30之間 – user2174831 2013-03-20 21:18:09

+0

投入的例子@ user2174831'$值[$ i]'的'if'條件將是你'real_value'。 – jeroen 2013-03-20 21:19:56

0

這種嘗試:

for ($i=0;$i<count($values);$i++) 
{ 
    if ($real_value < $values[$i]) 
    { 
     print $values[$i]; 
     break; 
    } 
} 
0
<?php 
// Define the number added to each step 
$increment = 10; 

// The number we're actually dealing with 
$real_value = 22; 

$current = 0; // Starting value 
while($current <= $real_value) { // Iterate, adding $increment each loop 
    if($current < $real_value) { 
    $current += 10; 
    } 
} 

print' Real Value "' . $real_value . '" has calculated value of: "' . $current . '".'; 
0

您可以試試這個。 1.將您的$ real_value添加到數組中。 2.對數組進行排序。 3.獲取實際值+1的索引元素。