2012-03-23 23 views
0

私はこのコードを持って動作しません:休憩;適切

foreach ($items as $key=>$value) { 

    if (strpos(strtolower($key), $text) !== false) { 
      array_push($result, array("id"=>$value, "label"=>$key, "value"=>strip_tags($key))); 
    } 
    if (count($result) > 2) 
     break;    
} 

break文は、私は2つの以上の項目を取得するように動作しません。 しかし、私が休憩を変更する場合。 〜

die('results more than 2'); 

これは正常に動作していることを示しています。

私は正しくbreak文を使用していますか?

+0

どのように多くの2、より多くの?それを見て、私は$結果が3つの項目を含むと期待しています。はい、ブレークを正しく使用しています。 – Benubird

+0

'$ result'に3つ以上のitens('> 2')が含まれていると、あなたの現在のコードが壊れます。ちょうど2で壊れて欲しいですか?そして、 '== 2'または'> 1'を使います。 – bfavaretto

答えて

9

もちろん、2つ以上のアイテムがあります。あなたはif count($result) > 2と言っています>= 2 結果が2つ以上ある場合、それは壊れます。

1

breakif (count($result) > 2)の場合はもちろん、2つ以上のアイテムがあります。 あなたは2つだけをしたい場合は、単にif (count($result) >= 2)

1

それを適用し、結果をテスト使用:

if (count($result) >= 2) break;