我需要以下代码按字母顺序按升序(A-Z)列出场地名称。现在它正在按照数据库中列出的时间对场地进行排序。我在哪里调整?
<?php for($ii = 1; $ii <= 10; $ii++): ?>
<div class="bor_t menu_option_container"<?php if($ii != 1): ?> style="display: none;"<?php endif; ?>>
<div class="mb20">
<label class="ros_head alt_label" for="venue_option<?php echo $ii; ?>_note_field">VENUE OPTION <?php echo $ii; ?></label>
<?php
$venue_room_options = array();
$venue_room_options["null"] = "Select a venue";
foreach($rooms as $room) {
$venue_room_options[$room->VenueID . '_' .
$room->RoomID] = $room->VenueName . " - " . $room->RoomName;
}
echo form_dropdown('venue_selection' . $ii, $venue_room_options, ( set_value('venue_selection' . $ii) ) ? set_value('venue_selection' . $ii) : '1', 'id=""', array("id"=>"venue_option" . $ii));
?>
</div> <!-- /.mb20 -->`
答案 0 :(得分:2)
您可以使用php数组函数asort()对数组进行排序。
在这里添加排序功能
<?php
// your code
asort($venue_room_options); // new line added
echo form_dropdown('venue_selection' . $ii, $venue_room_options, ( set_value('venue_selection' . $ii) ) ? set_value('venue_selection' . $ii) : '1', 'id=""', array("id"=>"venue_option" . $ii));
....
?>
这将按场地名称 - roomName按字母顺序排序
答案 1 :(得分:1)
答案 2 :(得分:0)
如果要维护密钥关联,请使用函数asort,如
<?php
...
asort($venue_room_options);
echo form_dropdown('venue_selection' . $ii, $venue_room_options, ( set_value('venue_selection' . $ii) ) ? set_value('venue_selection' . $ii) : '1', 'id=""', array("id"=>"venue_option" . $ii));
...
?>
有许多PHP函数可用于数组排序: http://php.net/manual/en/array.sorting.php