2012-01-14 131 views
3

比方說,比如我有這樣的功能:用一個return語句的foreach循環

function testName($name){ 
    $nems = array('John','Mary','Joseph','Chuck'); 

    foreach($nems as $nem){ 
    if($nem == $name) 
     return true; 
    } 
    } 
} 

而且$name = 'Mary',將foreach循環立即終止一次$nem==$name或只是繼續完成整個陣列的迭代?

回答

7

它會立即終止。

+0

OP的代碼不會「如果($ nem == $ name)」他缺少's':-) – 2012-01-14 03:39:08

+1

@AdrianCornish:你確定嗎?代碼對我來說看起來很好。 – 2012-01-14 03:41:03

+0

DOH! - 根本沒有;-) - 抱歉! – 2012-01-14 03:41:52

1

正如@DietrichEpp所說,它會立即終止;不過,我覺得我需要指出的是,這種問題可以用一個簡單的測試腳本,這樣很容易解決的和/或參考手冊:

enter image description here 你會注意到,我甚至沒有需要保存文件

請確保您在發佈之前用盡其他資源。