如果我们想提供选择时间的时间选择器下拉,那么有很多选项要执行此操作。
我们可以使用jQuery插件向用户提供时间选择器,或者使用PHP生成自定义时间选择器下拉列表。
如果我们对网页加载时间关注,则更好地使用自定义时间范围下拉来选择时间。
使用PHP我们可以轻松创建一个时间范围数组,生成时间选择器下拉HTML。
在此简短的教程中,我们将向我们展示如何在PHP中创建时间范围,并使用时间范围数组显示时间选择器下拉列表。
为了更好的可用性,我们将把所有代码放入名为'create_time_range()'的php函数。
使用'create_time_range()'功能,我们可以根据我们所需的持续时间轻松获得时间范围。
“create_time_range()”函数以指定的时间间隔创建一个时间范围数组。
'create_time_range()'函数接受四个参数并返回时间范围数组。
- '$开始'»必填。指定开始时间。例如,早上7:30或者7:30
- '$结束'»要求。指定结束时间。例如,晚上8:30或者20:30
- '$interval'»可选。指定时间范围中使用的间隔。例如,1小时,1分钟,1秒等
- '$格式'»可选。指定要在时间范围内获取的时间格式。例如,12或者24
/**
* create time range by onitroad
*
* @param mixed $start start time, e.g., 7:30am or 7:30
* @param mixed $end end time, e.g., 8:30pm or 20:30
* @param string $interval time intervals, 1 hour, 1 mins, 1 secs, etc.
* @param string $format time format, e.g., 12 or 24
*/
function create_time_range($start, $end, $interval = '30 mins', $format = '12') {
$startTime = strtotime($start);
$endTime = strtotime($end);
$returnTimeFormat = ($format == '12')?'g:i:s A':'G:i:s';
$current = time();
$addTime = strtotime('+'.$interval, $current);
$diff = $addTime - $current;
$times = array();
while ($startTime < $endTime) {
$times[] = date($returnTimeFormat, $startTime);
$startTime += $diff;
}
$times[] = date($returnTimeFormat, $startTime);
return $times;
}
使用“create_time_range()”功能如下,获取特定时间持续时间的时间范围数组。
//create array of time ranges
$times = create_time_range('7:30', '18:30', '30 mins');
上面的代码返回如下所示的时间范围数组。
Array
(
[0] => 7:30:00 AM
[1] => 8:00:00 AM
[2] => 8:30:00 AM
[3] => 9:00:00 AM
[4] => 9:30:00 AM
[5] => 10:00:00 AM
[6] => 10:30:00 AM
[7] => 11:00:00 AM
[8] => 11:30:00 AM
[9] => 12:00:00 PM
[10] => 12:30:00 PM
[11] => 1:00:00 PM
[12] => 1:30:00 PM
[13] => 2:00:00 PM
[14] => 2:30:00 PM
[15] => 3:00:00 PM
[16] => 3:30:00 PM
[17] => 4:00:00 PM
[18] => 4:30:00 PM
[19] => 5:00:00 PM
[20] => 5:30:00 PM
[21] => 6:00:00 PM
[22] => 6:30:00 PM
)
以下HTML和PHP代码将使用时间范围数组生成时间选择器下拉列表。
<select name="time_picker">
<option value="">Select Time</option>
<?php foreach($times as $key=>$val){ ?>
<option value="<?php echo $val; ?>"><?php echo $val; ?></option>
<?php } ?>
</select>
日期:2020-06-02 22:15:27 来源:oir作者:oir
