2

英国に一致する国があるかどうかを確認するためにさまざまな国を検索しています。一致する場合は、それを引き出してドロップダウンの上部に配置します。

foreach($this->registry->stockistCountries as $value)
{
    if($value['country'] == 'UK'){
        $buffer .= '<option>UK</option>';
        $buffer .= '<option disabled>------------------</option>';
    }

}

UKが見つかった場合、それを配列$ this-> registerry-> stockistCountriesから削除する方法はありますか?

ありがとう

4

4 に答える 4

3

ループを次のように変更します。

foreach($this->registry->stockistCountries as $i => $value)
{
    if($value['country'] == 'UK'){
        $buffer .= '<option>UK</option>';
        $buffer .= '<option disabled>------------------</option>';
        unset($this->registry->stockistCountries[$i]);
    }

}
于 2012-05-11T12:01:51.177 に答える
1

-loopを変更foreachしてキーも取得してから、次を使用しますunset()

foreach($this->registry->stockistCountries as $key => $value){
                                  // add this ^^^^^^^^
  // do something
  if(/* whatever */){
    unset($this->registry->stockistCountries[$key]);
  }
}
于 2012-05-11T12:01:07.973 に答える
0

何かのようなもの @unset($this->registry->stocklist['country']['UK']);

于 2012-05-11T12:02:53.437 に答える
0
$found = array_search('UK', $this->registry->stockistCountries); //search for UK


unset($this->registry->stockistCountries[$found]); // Remove from array
于 2012-05-11T12:05:31.953 に答える