1.数据库字段
version 就是版本号,根据客户端传递过来的版本号进行对比
2.看代码,注释的很详细
//检测版本更新
public function PostProjectDown(){
//获取前段传递过来的版本号
$version = $_POST['version'];
//查询数据库的当前版本号
$mysql_version = M('ipad_version')->field('version,add_time')->find();
//判断前段版本号是否大于数据库版本号,如果小于就更新
if($version == $mysql_version['version']){
$this->ds_json_encode('1000','当前版本号等于服务器版本号!');
}else{
//如果客户端版本号小于服务端版本号,就需要更新
if($version < $mysql_version['version']){
$file_name = "down(1.0).zip"; //下载文件名
$file_dir = RUNTIME_VERSION; //下载文件存放目录
// file_exists(RUNTIME_VERSION.'zhai.txt');
// die;
//检查文件是否存在
if (!file_exists($file_dir . $file_name)) {
header('HTTP/1.1 404 NOT FOUND');
} else {
//以只读和二进制模式打开文件
$file = fopen($file_dir . $file_name, "rb");
//告诉浏览器这是一个文件流格式的文件
Header("Content-type: application/octet-stream");
//请求范围的度量单位
Header("Accept-Ranges: bytes");
//Content-Length是指定包含于请求或响应中数据的字节长度
Header("Accept-Length: " . filesize($file_dir . $file_name));
//用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。
Header("Content-Disposition: attachment; filename=" . $file_name);
//读取文件内容并直接输出到浏览器
echo fread($file, filesize($file_dir . $file_name));
fclose($file);
exit ();
}
echo '当前版本号:'.$version.'小于数据库版本号'.$mysql_version['version'];
}else{
//如果客户端版本号大于服务端版本号,那就是有异常!
$this->ds_json_encode('1002','异常!当前版本号大于服务器版本号!');
}
}
}