2011-03-17 83 views
1

我有一個數組,其內容以foreach顯示。這是我的代碼:在foreach中排除項目

foreach($ga->getResults() as $result) 
{ 
    if ($result->getdayOfWeek() != 5 || $result->getdayOfWeek() != 6): 
    echo $result->getdayOfWeek().'<br>'; 
    endif; 
} 

我要排除Itmes其中$result->getdayOfWeek()是5奧德6.我有它不工作的方式。

+2

按照慣例人們不要」在正常代碼中使用'if:... endif;'。相反,他們使用'if {...}'。替代的控制結構語法是爲模板保留的,並且只能在那裏使用。 – NikiC 2011-03-17 21:22:51

+0

好的加法nikic。 – Gazler 2011-03-17 21:23:30

回答

5

您需要一個和((& &))而不是或(||)。

foreach($ga->getResults() as $result) 
{ 
    if ($result->getdayOfWeek() != 5 && $result->getdayOfWeek() != 6): 
    echo $result->getdayOfWeek().'<br>'; 
    endif; 
} 

你也可以做到這一點通過以下方式:

foreach($ga->getResults() as $result) 
{ 
    if ($result->getdayOfWeek() == 5 || $result->getdayOfWeek() == 6): 
    continue; 
    endif; 
    echo $result->getdayOfWeek().'<br>'; 
} 

而且,nikic提到,該公約是用括號爲您的if語句:

if ($result->getdayOfWeek() == 5 || $result->getdayOfWeek() == 6) 
    { 
    continue; 
    }