/*

php 使用 unpack 获取zip 压缩文件的版本信息

*/

function getZipVer($zipfile) {

$quote_val = get_magic_quotes_runtime();

set_magic_quotes_runtime(false);

$fr = @fopen($zipfile, 'rb');

if(!$fr) return false;

if(fseek($fr, 4) == -1) return false;

//第5、6个字节是版本信息

$ver = fread($fr, 2);

fclose($fr);

$values = unpack("vversion", $ver);

$verdata = array('major' => $values['version'] / 10,

'minor' => $values['version'] % 10);

set_magic_quotes_runtime($quote_val);

return $verdata;

}

$version = getZipVer('test.zip');

if(!$version) {

echo "Error reading version information!";

} else {

echo "Version info: {$version['major']} (major)" .

", {$version['minor']} (minor)";

}

//http://books.msspace.net/mirrorbooks/php5/067232511X/ch20lev1sec1.html

?>

php unpack 原理,unpack相关推荐

  1. git push 失败,提示 unpack error/unpack failed 解决方法

    [问题描述] 在执行命令 git commit --amend 对提交进行修改后,再执行 git push review HEAD:refs/for/xxxx 将代码提交到 Gerrit 上,但是提交 ...

  2. pack unpack 用法 转载

    原本转自于 https://segmentfault.com/a/1190000008305573 PHP中有两个函数pack和unpack,很多PHPer在实际项目中从来没有使用过,甚至也不知道这两 ...

  3. socket中pack 和 unpack 的使用

    任何一款拥有socket操作能力的语言都有一个专门用于组包的函数,php也不例外! 用了很久php了却很少有机会用php进行一些二进制操作. 最近用php写一个socket客户端连接一个用C++语言开 ...

  4. 公司用了 6 年的Spring Boot 部署方案!打包 + Shell 脚本详解,稳的一批!

    本篇和大家分享的是springboot打包并结合shell脚本命令部署,重点在分享一个shell程序启动工具,希望能便利工作: profiles指定不同环境的配置 maven-assembly-plu ...

  5. 我司Spring Boot 项目打包 + Shell 脚本部署详细总结,太有用了!

    欢迎关注方志朋的博客,回复"666"获面试宝典 本篇和大家分享的是 Spring Boot 打包并结合 Shell 脚本命令部署,重点在分享一个shell 程序启动工具,希望能便利 ...

  6. Spring Boot 打包不同环境配置与 Shell 脚本部署

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 本篇和大家分享的是 Spring Boot 打包并结合 S ...

  7. 利用MAVEN打包可运行jar包,包括依赖的第三方包

    为什么80%的码农都做不了架构师?>>>    1. 首先看下maven项目的标准目录结构: 2. 看下项目pom.xml的配置,首先要配置maven-jar-plugin,把自己的 ...

  8. 机器学习-数据科学库(第三天)

    14.numpy的数组的创建 什么是numpy 一个在Python中做科学计算的基础库,重在数值计算,也是大部分PYTHON科学计算库的基础库,多用于在大型.多维数组上执行数值运算(数组就是列表.列表 ...

  9. Spring Boot 项目打包 + Shell 脚本部署实践,太有用了!

    本篇和大家分享的是springboot打包并结合shell脚本命令部署,重点在分享一个shell程序启动工具,希望能便利工作: profiles指定不同环境的配置 maven-assembly-plu ...

  10. 【网络安全】Agent内存马的自动分析与查杀

    前言 出发点是Java Agent内存马的自动分析与查杀,实际上其他内存马都可以通过这种方式查杀 本文主要的难点主要是以下三个,我会在文中逐个解答 如何dump出JVM中真正的当前的字节码 如何解决由 ...

最新文章

  1. mysql基本命令行
  2. 思谋科技A轮融资超1亿美元 ,成为最年轻“准独角兽”AI企业
  3. oracle ORACLE_SID使用上的意义
  4. python访问数据库日志文件_python利用inotify实现把nginx日志实时写入数据库
  5. EF Code First 学习笔记:关系(转)
  6. Spring Boot 解决跨域Cors问题
  7. PyCharm安装与配置,python的Hello World
  8. 20 MM配置-BP业务伙伴-定义业务伙伴和供应商编码保持一致
  9. 再来关注一哥们的博客 水木 风雪
  10. C语言字符型char和整型int的关系和示例
  11. android读取mysql数据库文件_Android开发系列(十七):读取assets目录下的数据库文件...
  12. 238.除自身以外数组的乘积 (力扣leetcode) 博主可答疑该问题
  13. python爬虫大众点评_Python爬虫丨大众点评数据爬虫教程(1)
  14. Java小程序--多彩时钟表盘的制作
  15. 最新蚂蚁金服金融源码+蚂蚁财富投资理财源码/基于FastAdminf框架
  16. STM8和STM32开发总结
  17. NewStarCTF 公开赛wp
  18. 【Redis】Redis数据库
  19. webstorm2019 汉化后无法设置 webstorm最新汉化包
  20. Jmeter Springboot Redisson分布式锁并发订单操作(下单、取消单、完成单、加库存)

热门文章

  1. Delphi Exif
  2. 无损音乐刻录成cd有意义吗_无损和CD不一样?无损音乐的“玄学”知多少?
  3. 【windows——工具篇】哔哩哔哩快捷键
  4. 8位并行左移串行转换电路_单片机试题
  5. linux操作系统基础教程第二版附录答案,《linux操作系统》第2版完整习题答案 电子工业出版社.doc...
  6. 股票实战--线性回归
  7. MATLAB实现空间前方交会-后方交会计算
  8. STC12C5A60S2 双串口
  9. 现代软件工程 第一章 【概论】练习与讨论 第6题 邓杰
  10. _f5是c语言合法变量,C语言练习题1