2010-08-19 55 views
1

如何檢查變量$c = 90,89,78,88;中的每個值是否等於true我認爲您一次一個地將其稱爲數組。檢查值是否等於PHP中的值爲真

這部分檢查變量。

if($cat['id'] == $c){ 
    $url = $parent_url . $cat['url']; 
    echo '<a href="' . $url . '" title="' . $cat['category'] . '">' . $cat['category'] . '</a>';    
} 

這裏是PHP代碼。

$c = 90,89,78,88; 

function make_list ($parent = 0, $parent_url = '') { 
    global $link; 
    global $c; 

    foreach ($parent as $id => $cat) { 

     if($cat['id'] == $c){ 
      $url = $parent_url . $cat['url']; 
      echo '<a href="' . $url . '" title="' . $cat['category'] . '">' . $cat['category'] . '</a>';    
     } 

     $url = $parent_url . $cat['url']; 

     if (isset($link[$id])) { 
      make_list($link[$id], $url); // $url adds url value to sub categories 
     }    
    }  
} 
+0

您可以使用''===做檢查實際真假 – 2010-08-19 10:54:23

+0

但這並檢查各值在陣列中一次一個? – FAQ 2010-08-19 10:55:30

+1

不應該'$ C '是一個數組? – Gumbo 2010-08-19 10:55:41

回答

4
global $c; 

$cArray = explode(',',$c); 

foreach ($parent as $id => $cat) { 

    if (in_array($cat['id'],$cArray)) { 
+0

我不能得到這個工作:( – FAQ 2010-08-19 11:05:22

+0

也改變功能之前的行$ c = '90,89,78,88'; – 2010-08-19 11:10:47

+0

@Haim Evgi只要我發佈,我得到它的工作。 – FAQ 2010-08-19 11:12:02

0

你的$ c不是那裏的一個數組 - 你需要使它成爲一個數組,例如,

$ arrayC = explode(',',$ c);

檢查出php.net/explode

的功能,那麼您如果($貓[ '身份證'] == $ C)會彷彿更好(in_array($貓[ '身份證'], $ arrayC)

+0

我不能得到這個工作:( – FAQ 2010-08-19 11:04:26

+0

當你描述一個問題時,試着說更多 - 它可以幫助別人知道什麼是不工作或錯誤等:)祝你好運!如果可以,請修改我,我沒有任何反饋,因爲我是新的! – 2010-09-07 10:33:05

0
$your_array = explode(",",$c); 
foreach($your_array as $value) { 
    if ((int) $value === true) { 
     // here type what you what to do if true 
    } 
} 
相關問題