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

PHP读取exe软件版本号

828 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正则提取字符串中的数字,并组成数组。...

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

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

1 400
str_replace怎样一次性替换多个值(数组)?
str_replace怎样一次性替换多个值(数组)?

我们知道,str_replace是可以执行替换命令的,但一般是用于一对一替换,这个很好...

1 381
怎样在每次发起请求时重置session_id?
怎样在每次发起请求时重置session_id?

在一些开发场景中,我们需要在每次发起请求后更新重置session_id以同步用户数...

3 343
PHP函数switch()介绍
PHP函数switch()介绍

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

0 345
php分割中文字符源码分享与可行性分析
php分割中文字符源码分享与可行性分析

php分割中文字符,之前计划的是可用于搜索结果、tag结果关键词标红。但在实际...

0 353
php正则提取字符串中的数字并打印输出
php正则提取字符串中的数字并打印输出

我们在网站开发的过程中经常需要处理数据,今天讲讲怎样用正则提取字符串中的...

0 363
怎样用php批量删除文件或者文件夹?
怎样用php批量删除文件或者文件夹?

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

0 322
推荐插件
帝国cms网站会员登录与退出历史记录日志插件
帝国cms网站会员登录与退出历史记录日志插件

帝国cms默认只有上次登录时间与ip,没有一个记录清单,所以今天,我们分享这个帝...

0 284
帝国cms智能自动审核按星期几审核指定栏目带推送插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件

采集站的必备资源是自动审核,要做到日收录也离不开定时发布。而本插件的自动...

0 1154
帝国cms百度、必应bing、神马推送增强收录三合一插件
帝国cms百度、必应bing、神马推送增强收录三合一插件

因客户需要一键推送到多平台,下载鸥开发了这款一键推送至百度、必应、神马插...

0 41
帝国cms百度AI图像无损放大api接口对接插件
帝国cms百度AI图像无损放大api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像无损放大的功能。经过...

0 354
帝国cms纳米数据接口(足球比赛中最新数据)
帝国cms纳米数据接口(足球比赛中最新数据)

帝国cms 对接纳米数据(www.nami.com)接口,本接口主要接收、整理足球比赛实时数...

0 191
帝国CMS内网用户静态站点文章访客统计插件
帝国CMS内网用户静态站点文章访客统计插件

本插件适用于内网用户,可查看单篇文章访问者ip地址。如果添加访问者ip组,可查...

0 463
帝国cms百度AI图像去雾api接口对接插件
帝国cms百度AI图像去雾api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像去雾的功能。经过实际...

0 374
帝国cms百度AI图像清晰度增强api接口对接插件
帝国cms百度AI图像清晰度增强api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像清晰度增强的功能。经...

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