簡體   English   中英

PHP陣列: <select>盒子和<optgroup>

[英]PHP Array: <select> box and <optgroup>

我正在嘗試編寫一個腳本,該腳本可讓您使用每個國家/地區的城市生成一個。 城市應該通過PHP數組按國家分組。

因此,這里的示例在HTML中是我想要的,但在PHP Array中才是。

<select>
    <optgroup label="Country X">
        <option value="City1">City 1</option>
        <option value="City2">City 2</option>
        <option value="City3">City 3</option>
        <option value="City4">City 4</option>
        <option value="City5">City 5</option>
    </optgroup>

    <optgroup label="Country Y">
        <option value="City6">City 6</option>
        <option value="City7">City 7</option>
        <option value="City8">City 8</option>
        <option value="City9">City 9</option>
        <option value="City10">City 10</option>
    </optgroup>

    <optgroup label="Country Z">
        <option value="City11">City 11</option>
        <option value="City12">City 12</option>
        <option value="City13">City 13</option>
        <option value="City14">City 14</option>
        <option value="City15">City 15</option>
    </optgroup>
</select>

這是到目前為止我用PHP完成的代碼...這個代碼的主要問題是每個國家/地區都有所有城市。 我只想在不同國家/地區擁有5個城市。

<?php

$countries = array(
    'Country X',
    'Country Y',
    'Country Z', 
);

$cities = array(
    'City 1',
    'City 2',
    'City 3', 
    'City 4',
    'City 5', 
    'City 6',
    'City 7',
    'City 8', 
    'City 9',
    'City 10', 
    'City 11',
    'City 12',
    'City 13', 
    'City 14',
    'City 15', 
);


?>

<select name="places">
<?php foreach($countries as $key): ?>
        <optgroup label="<?php echo $key; ?>">
        <?php foreach($cities as $key => $value): ?>
            <?php echo '<option value="'.$key.'">'.$value.'</option>'; ?>
            <?php endforeach; ?>
        </optgroup>
<?php endforeach; ?>
</select>

分割城市:

$cities = array_chunk($cities, 5);
$counter = 0;?>

<select name="places">
<?php foreach($countries as $key): ?>
        <optgroup label="<?php echo $key; ?>">
        <?php foreach($cities[$counter++] as $key => $value): ?>
            <?php echo '<option value="'.$key.'">'.$value.'</option>'; ?>
            <?php endforeach; ?>
        </optgroup>
<?php endforeach; ?>
</select>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM