PHP-从PHP数组构建选择菜单,包括不匹配的数据库值

PHP-从PHP数组构建选择菜单,包括不匹配的数据库值,php,Php,我正在从PHP数组$times生成一个HTML选择菜单,如下所示: Array ( [9:00am] => 9:00am [9:30am] => 9:30am [9:45am] => 9:45am [10:00am] => 10:00am [10:30am] => 10:30am [10:45am] => 10:45am [11:00am] => 11:00am [11:30am] => 11:30am [11:45am] => 11:45a

我正在从PHP数组$times生成一个HTML选择菜单,如下所示:

Array ( [9:00am] => 9:00am [9:30am] => 9:30am [9:45am] => 9:45am [10:00am] => 10:00am [10:30am] => 10:30am [10:45am] => 10:45am [11:00am] => 11:00am [11:30am] => 11:30am [11:45am] => 11:45am [12:00pm] => 12:00pm [12:30pm] => 12:30pm [12:45pm] => 12:45pm [1:00pm] => 1:00pm [1:30pm] => 1:30pm [1:45pm] => 1:45pm [2:00pm] => 2:00pm [2:30pm] => 2:30pm [2:45pm] => 2:45pm [3:00pm] => 3:00pm [3:30pm] => 3:30pm [3:45pm] => 3:45pm [4:00pm] => 4:00pm [4:30pm] => 4:30pm [4:45pm] => 4:45pm [5:00pm] => 5:00pm [5:30pm] => 5:30pm [5:45pm] => 5:45pm [6:00pm] => 6:00pm [-] => - )
我按如下方式构建选择菜单,比较每个选项,看它是否与数据库记录中的值匹配,以便标记为选中:

<?php 

实际上不是选择菜单中的选项之一,例如5:15pm。当前未显示为选中,但任何不匹配的值都应包含在“选择”菜单中并标记为选中。

这是一个适合您需要的示例。希望这有帮助

<?php

$times = array(
'01:00' => '01:00',
'02:00' => '02:00',
'03:00' => '03:00',
'04:00' => '04:00',
'05:00' => '05:00',
'06:00' => '06:00',
'07:00' => '07:00',
'08:00' => '08:00',
'09:00' => '09:00'
);

$addThisTime = '04:15';

if(!in_array($addThisTime,$times))
{
    $times[''.$addThisTime.''] = $addThisTime;

    ksort($times);
}



$html = '<select name="yourSelect" id="yourSelectID">';

foreach($times as $v)
{
    $html .= '<option value="'.$v.'" '.(strcmp($v,$addThisTime)==0 ? 'selected' : '').'>'.$v.'</option>';
}

$html .= '</select>';

echo $html;
$time == $record->getField('HotPhotoTime')
<?php

$times = array(
'01:00' => '01:00',
'02:00' => '02:00',
'03:00' => '03:00',
'04:00' => '04:00',
'05:00' => '05:00',
'06:00' => '06:00',
'07:00' => '07:00',
'08:00' => '08:00',
'09:00' => '09:00'
);

$addThisTime = '04:15';

if(!in_array($addThisTime,$times))
{
    $times[''.$addThisTime.''] = $addThisTime;

    ksort($times);
}



$html = '<select name="yourSelect" id="yourSelectID">';

foreach($times as $v)
{
    $html .= '<option value="'.$v.'" '.(strcmp($v,$addThisTime)==0 ? 'selected' : '').'>'.$v.'</option>';
}

$html .= '</select>';

echo $html;