下载鸥 > 网站下载 > 开发教程 > PHP

PHP读取exe软件版本号

776 2020-11-20 16:35:32

收藏

简述

通过PHP读取版本号,达到自动更新的目的。

最近在做一个桌面客户端软件,顺手给它加上了在线更新的功能:与服务端的最新软件进行版本比对,如果本地版本低于服务端版本就提示升级。
 

常规思路是在服务端放个配置文件,里面写入版本号,然后再通过 api 输出。然而这样每次都要手动去修改版本号,难免会手抖将版本号输错。好在,咱们的 php 是万能的。因此可以直接用 php 来读取服务器上最新版 exe 的版本号,方便省事可靠!


相关代码如下:

/** * PHP 读取 exedll 文件版本号 *  * @auth   @腾讯电脑管家(https://zhidao.baidu.com/question/246143241010222924.html) * @param  $filename 目标文件 * @return 读取到的版本号 */function getFileVersion($filename){    $fileversion '';    $fpFile = @fopen($filename"rb");    $strFileContent = @fread($fpFilefilesize($filename));    fclose($fpFile);    if($strFileContent)    {        $strTagBefore 'FileVersion';        // 如果使用这行,读取的是 FileVersion        // $strTagBefore 'ProductVersion';    // 如果使用这行,读取的是 ProductVersion        $strTagAfter '';        if (preg_match("/$strTagBefore(.*?)$strTagAfter/"$strFileContent$arrMatches))        {            if(count($arrMatches) == 2)             {                $fileversion str_replace(""''$arrMatches[1]);            }        }    }    return $fileversion;}


网上找到还有一种读取方法,不过只支持 Windows 服务器。留以备用。

/** * PHP 读取 exedll 文件版本号(仅支持Windows服务器) *  * @auth   https://zhidao.baidu.com/question/475823802.html * @param  $filename 目标文件(必须是完整的路径) * @return 读取到的版本号 */function getFileVersion($filename){    $fso new COM('Scripting.FileSystemObject');    return $fso->GetFileVersion($filename);}

 

本文地址:https://xzo.com.cn/develop/php/447.html

有帮助,很赞!

信息来源:精准像素
信息标签
导出教程 下载word版教程
发表评论 共有条评论
关于PHP

PHP是一种服务器端、跨平台、html嵌入式的脚本语言,其功能十分强大、入门简单。在过去,民间一直有说法称“PHP是最好的编程语言”,是PHP开发者对自身所使用语言的肯定。

PHP曾是最主流的网站web开发语言之一,现在也依然十分流行。

推荐PHP开发教程
PHP判断某个时间戳(打卡、点餐、签到等)是不是今天记录的
PHP判断某个时间戳(打卡、点餐、签到等)是不是今天记录的

php判断时间戳是不是今天的实现方法:首先创建一个PHP示例文件;指定一个时间,并...

15 999
PHP怎样正则匹配段落里的图片并提取图片链接?
PHP怎样正则匹配段落里的图片并提取图片链接?

在程序开发的过程中,我们可能需要提取段落里的图片用作缩略图。那么,这个正则...

19 823
PHP正则提取字符串中的数字组成数组
PHP正则提取字符串中的数字组成数组

在实际操作过程中,我们可能需要通过PHP正则提取字符串中的数字,并组成数组。...

13 1253
PHP怎样高效快速地生成一组10条随机数?
PHP怎样高效快速地生成一组10条随机数?

猜你喜欢如果用rand()来获取随机ID是非常消耗性能的。小网站几百几千条数据...

1 317
当缓存文件大于4KB,不能用cookie时的替代方案就是session
当缓存文件大于4KB,不能用cookie时的替代方案就是session

鸥哥最近在开发一个项目,出于对用户隐私的保护,数据一概不能存储到数据表,而是...

1 333
PHP函数switch()介绍
PHP函数switch()介绍

通俗的说,现在有结果A B C D E,每个结果代表不同的意义,此时我们可以用if else...

0 301
什么是高并发,与CPU,内存,分布式有什么关系
什么是高并发,与CPU,内存,分布式有什么关系

我们在网站开发的过程中经常会接触到高并发这个概念,但高并发到底是什么,具体...

1 260
怎样用php批量删除文件或者文件夹?
怎样用php批量删除文件或者文件夹?

在网站建成后的维护与优化阶段,我们会面临无用栏目/数据处理的问题。量小的...

0 267
随机PHP开发教程
PHP实现随机一句话留言教程
PHP实现随机一句话留言教程

很多网站都喜欢在页面中加个一言,不过一般都是调用的第三方api。其实,使用万...

3 846
PHP页面添加访问密码教程
PHP页面添加访问密码教程

PHP页面添加访问密码教程...

10 783
PHP利用百度识图接口把百度当图床
PHP利用百度识图接口把百度当图床

首先我们打开百度识图的首页,按 F12 呼出浏览器开发者工具,切换到 Netnork...

15 938
PHP可变变量
PHP可变变量

“可变变量”这一概念是 PHP 的特色语法,在其它的编程语言中一般没这种骚操...

0 540
curl获取结果乱码怎么办?
curl获取结果乱码怎么办?

curl获取结果乱码怎么办?...

3 569
无需任何Api的在线翻译功能
无需任何Api的在线翻译功能

今天分享一个 php 的翻译类模块,这个模块是之前在 thinkphp 的论坛里淘到的...

0 373
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入