微信公众平台开发实例(琴岛学院校园之声) PHP开发 代码挂载SAE平台(四)自习功能

欢迎关注我的微信公众账号“APP每日推荐

微信公众平台开发实例(琴岛学院校园之声) PHP开发 代码挂载SAE平台(四)自习功能_第1张图片

推荐一些精彩手机应用,互联网行业资讯~


<!--题外话  :做这样一个系列的原因在于,这个微信公众平台算的上是我解除编程一来开发的第一个有实际用途的东西,在这之中有很多体会,不敢说讲给大家听,只是同大家分享一下,作为学计算机的,因为专科学的是网络,所以编程解除的并不深,现在开始从新开始学习编程。这里面的代码可能写的不是很规范,还请您指出,我会继续修改的。-->

这次分享的功能是自习功能查:

微信公众平台开发实例(琴岛学院校园之声) PHP开发 代码挂载SAE平台(四)自习功能_第2张图片

这个功能的前端代码:

 if (!empty($keyword)) {													
	if ($keyword == "自习") {
             $days = weekSwitch($time);
             $timeswitch = timeSwitch($time);
             $contentStr = roomSelect($days, $timeswitch);
             }
	}

因为这里时间格式为Unix 时间戳 需要提取当前时间的“星期几”

function weekSwitch($times) {
    $array1 = array('7', '1', '2', '3', '4', '5', '6');
    $s = date("w", $times);
    $day = $array1[(int) $s];
    return $day;
}

提取当前时间的“时”和“分”,因为课程时间受限每节课都是几点50下课,所以这个地方需要将大于45分的时候自动将小时数+1
function timeSwitch($times) {
    $s = date("H", $times);
    if (date("i", $times) >= 45) {
        $s = $s + 1;
    }
    if ($s >= 6 && $s <= 7) {
        $s = 8;
    }
    if ($s >= 12 && $s <= 13) {
        $s = 14;
    }
    return $s;
}

function roomSelect($days, $timeswitch) {
    $con = mysql_connect(SAE_MYSQL_HOST_M . ':' . SAE_MYSQL_PORT, SAE_MYSQL_USER, SAE_MYSQL_PASS);
    mysql_select_db("数据库名称", $con);
    $sql = "select 教室号 from 数据表名 where 星期数= " . $days . " AND (`每节课开始小时数` <=" . $timeswitch . ")AND (`每节课结束的小时数` >" . $timeswitch . " )";
    $result = mysql_query($sql, $con);
    $row = mysql_fetch_array($result);
    if ($row) {
        return $row['room_no'];
    } else {
        return "勤奋的童鞋,现在空余教室很多可以随意选择哦~";
    }
    mysql_close($con);
}

在PHP中通过time()函数获取到的是时间是Unix时间戳,这个数字是表示从1970-01-01到现在一共走了多少秒。
string date ( string $format [, int $timestamp ] )这个方法是格式化一个本地时间/日期,第一个参数的可选项有以下几个:
a - "am" 或是 "pm"  
A - "AM" 或是 "PM"  
d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"  
D - 星期几,三个英文字母; 如: "Fri"  
F - 月份,英文全名; 如: "January"  
h - 12 小时制的小时; 如: "01" 至 "12"  
H - 24 小时制的小时; 如: "00" 至 "23"  
g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"  
G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"  
i - 分钟; 如: "00" 至 "59"  
j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"  
l - 星期几,英文全名; 如: "Friday"  
m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"  
n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"  
M - 月份,三个英文字母; 如: "Jan"  
s - 秒; 如: "00" 至 "59"  
S - 字尾加英文序数,二个英文字母; 如: "th","nd"  
t - 指定月份的天数; 如: "28" 至 "31"  
U - 总秒数  
w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)  
Y - 年,四位数字; 如: "1999"  
y - 年,二位数字; 如: "99"  
z - 一年中的第几天; 如: "0" 至 "365"  


这个自动查询当前空教室的功能唯一的麻烦的地方就是上面说的那个时间转换了,剩下的工作就是数据库匹配的事情了。

你可能感兴趣的:(数据库,Date,Timestamp,微信公众平台,unix时间戳)