0

ここで重複に少し問題があります。重複の戻り値が最大の int 値のままである限り、いつでも重複をクリップできると思います。

コードスタンプは次のとおりです。

    $unitList = Base_Client_Model::getBusinessUnitList(false, $selectedMarket, false, true);
    $marketListBox = $marketOptions = '';
    $marketList = array();

    for ($x = 1; $x <= $unitList['NUMBER_OF_BUSINESS_UNITS']; $x++) {
    $unitStr = 'BUSINESS_UNIT_' . $x . '_';

        $businessUnit = Base_Client_Model::getBusinessUnit($unitList[$unitStr . 'ID']);
        if ($unitList[$unitStr . 'ID'] && $unitList[$unitStr . 'ID'] != 42) {
            $marketListBox = "<option value='" . $unitList[$unitStr . 'ID'] . "'";
            if($selectedMarket == $unitList[$unitStr . 'ID']) {
                $marketListBox .= ' selected';
                $selectedMarket = 0;
            }

            $marketListBox .= ">&nbsp;&nbsp;&nbsp;" . preg_replace('/-Wimax/i', '', $unitList[$unitStr . 'NAME']) . "</option>\n";
            $marketList[$businessUnit->getElement('STATE')][] = $marketListBox;
        }
    }

    ksort($marketList);
    foreach($marketList as $key => $val) {
        $marketOptions .= "<option disabled='disabled'>&nbsp;</option><option disabled='disabled'>{$key}&#172;</option>\n" . implode($val);
    }

    $this->view->marketOptions = $marketOptions;

リターンの例を次に示します。

<option disabled="disabled">&nbsp;</option><option disabled="disabled">WA¬</option>
<option value="56">&nbsp;&nbsp;&nbsp;Aberdeen</option>
<option value="82">&nbsp;&nbsp;&nbsp;Bellingham</option>
<option value="106">&nbsp;&nbsp;&nbsp;Everett</option>
<option value="109">&nbsp;&nbsp;&nbsp;Kitsap County</option>
<option value="102">&nbsp;&nbsp;&nbsp;Seattle</option>
<option value="105">&nbsp;&nbsp;&nbsp;Tacoma</option>
<option value="20">&nbsp;&nbsp;&nbsp;Tri-Cities</option>
<option value="173">&nbsp;&nbsp;&nbsp;Tri-Cities</option>
<option value="64">&nbsp;&nbsp;&nbsp;Wenatchee</option>
<option value="65">&nbsp;&nbsp;&nbsp;Yakima</option>
<option value="162">&nbsp;&nbsp;&nbsp;Yakima</option>

期待される出力は次のとおりです。

<option disabled="disabled">&nbsp;</option><option disabled="disabled">WA¬</option>
<option value="56">&nbsp;&nbsp;&nbsp;Aberdeen</option>
<option value="82">&nbsp;&nbsp;&nbsp;Bellingham</option>
<option value="106">&nbsp;&nbsp;&nbsp;Everett</option>
<option value="109">&nbsp;&nbsp;&nbsp;Kitsap County</option>
<option value="102">&nbsp;&nbsp;&nbsp;Seattle</option>
<option value="105">&nbsp;&nbsp;&nbsp;Tacoma</option>
<option value="173">&nbsp;&nbsp;&nbsp;Tri-Cities</option>
<option value="64">&nbsp;&nbsp;&nbsp;Wenatchee</option>
<option value="162">&nbsp;&nbsp;&nbsp;Yakima</option>

答えはこれに似たものだと思います

$unitList['BUSINESS_UNIT_' . $x . '_NAME'] != $unitList['BUSINESS_UNIT_' . $x + 1 . '_NAME']

4

1 に答える 1

0

Wimax が優先される Wimax 市場と非 Wimax 市場からの比較が必要

            if ($unitList['BUSINESS_UNIT_' . $x . '_NAME'] .'-Wimax' != $unitList['BUSINESS_UNIT_' . ($x + 1) . '_NAME']) {
                $marketListBox = "<option value='" . $unitList[$unitStr . 'ID'] . "'";
                if($selectedMarket == $unitList[$unitStr . 'ID']) {
                    $marketListBox .= ' selected';
                    $selectedMarket = 0;
                }

                $marketListBox .= ">&nbsp;&nbsp;&nbsp;" . preg_replace('/-Wimax/i', '', $unitList[$unitStr . 'NAME']) . "</option>\n";
                $marketListArray[$businessUnit->getElement('STATE')][] = $marketListBox;
            }
于 2012-11-09T23:45:56.660 に答える