本文实例讲述了PHP getID3类的使用方法。分享给大家供大家参考,具体如下:

网上描述:

getID3()这个PHP脚本能够从MP3或其它媒体文件中提取有用的信息如:ID3标签,bitrate,播放时间等。

(格式包括:Ogg,WMA,WMV,ASF,WAV,AVI,AAC,VQF,FLAC,MusePack,Real,QuickTime,Monkey's Audio,MIDI等)。

官方网址:https://www.getid3.org/。

功能:

使用这个方法,可以获得音频、视频、图片等媒体文件中的信息,

我测了一下常见类型的媒体文件,测试结果如下:

使用的getID3的版本是:1.9.16-201810171314。

支持的类型:

音频:【mp3】、【amr】;

视频:【mp4】、【flv】、【wmv】、【avi】;

图片:【gif】、【png】、【jpg】。

不支持的类型:

视频格式【ts】。

示例:

使用背景:做聊天功能时,发送语音时,需要知道语音的时长,这个时候就可以使用getID3这个类。

开发环境:ThinkPHP3.2框架。

下载getID3类:在官网下载后解压,里边有许多文件,很多都是demo,只需要将getid3目录放到项目里,

我把目录放到ThinkPHP\Library\Vender下。

调用示例代码:

Vendor('getid3.getid3');

$getID3 = new \getID3();

$analyzeFileInfo = $getID3->analyze($filename);

if($analyzeFileInfo && is_array($analyzeFileInfo)){

if(isset($analyzeFileInfo['error']) && $analyzeFileInfo['error']){

$err_msg = '获取语音消息的时长失败';

if(is_array($analyzeFileInfo['error'])){

foreach ($analyzeFileInfo['error'] as $key=>$value) {

$err_msg .= ',错误'. ($key+1) . ':'.$value;

}

}else{

$err_msg .= ',错误:'.$analyzeFileInfo['error'];

}

log($err_msg);

return false;

}else{

if(isset($analyzeFileInfo['playtime_seconds'])){

return ceil($analyzeFileInfo['playtime_seconds']);

}

return false;

}

}else{

log('解析语音文件失败:'.$analyzeFileInfo);

return false;

}

}

附:getID3类源码点击此处本站下载。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP扩展开发教程》、《php文件操作总结》、《PHP网络编程技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

php getid3,PHP getID3类的使用方法学习笔记【附getID3源码下载】相关推荐

  1. JavaScript实现截留雨水问题的动态编程方法算法(附完整源码)

    JavaScript实现截留雨水问题的动态编程方法算法(附完整源码) dpRainTerraces.js完整源代码 dpRainTerraces.tset.js完整源代码 dpRainTerraces ...

  2. JavaScript实现跳跃游戏的动态编程自上而下的方法算法(附完整源码)

    JavaScript实现跳跃游戏的动态编程自上而下的方法算法(附完整源码) dpTopDownJumpGame.js完整源代码 dpTopDownJumpGame.test.js完整源代码 dpTop ...

  3. 基于JAVA计算机类专业考研交流学习平台计算机毕业设计源码+数据库+lw文档+系统+部署

    基于JAVA计算机类专业考研交流学习平台计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA计算机类专业考研交流学习平台计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目 ...

  4. 响应式重工业钢铁机械类网站pbootcms模板,html5工业设备网站源码下载

    (自适应手机版)响应式重工业钢铁机械类网站pbootcms模板,html5工业设备网站源码下载. PbootCMS内核开发的网站模板,该模板适用于企业通用.营销型.钢铁.钢材.重工业.机械.工业设备. ...

  5. android 桌面图标的点击放大效果,Android仿英语流利说取词放大控件的实现方法(附demo源码下载)...

    本文实例讲述了Android仿英语流利说取词放大控件的实现方法.分享给大家供大家参考,具体如下: 1 取词放大控件 英语流利说是一款非常帮的口语学习app,在app的修炼页面长按屏幕,会弹出一个放大镜 ...

  6. php生成vcf,[宜配屋]听图阁 - PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】 原创...

    本文实例讲述了PHP实现生成vcf vcard文件功能类定义与使用方法.分享给大家供大家参考,具体如下: 前面介绍了php读取vcf文件的方法,这里再来研究一下vcf文件的生成方法. VCF格式是Wi ...

  7. java fileupload 进度_Java上传文件进度条的实现方法(附demo源码下载)

    本文实例讲述了Java上传文件进度条的实现方法.分享给大家供大家参考,具体如下: 东西很简单,主要用到commons-fileupload,其中有一个progressListener的接口,该接口可以 ...

  8. java保存图片进度条_Java上传文件进度条的实现方法(附demo源码下载)

    本文实例讲述了Java上传文件进度条的实现方法.分享给大家供大家参考,具体如下: 东西很简单,主要用到commons-fileupload,其中有一个progressListener的接口,该接口可以 ...

  9. springmvc项目在启动完成之后执行一次方法_学习笔记21-springmvc部分源码学习

    SpringMVC:请求处理流程 这几张图讲的大致都是一个东西,就是springmvc的请求处理流程: ① 用户发送请求到springmvc框架提供的DispatcherServlet 这个前端控制器 ...

最新文章

  1. Java SE 8 在并发工具方面的加强
  2. 服务器返回的json数据,通过本地解析调用SBjson的类
  3. HttpClient超时重复提交问题
  4. Pytorch详解NLLLoss和CrossEntropyLoss、以及softmax和log_softmax
  5. A*寻路算法所生成的路径
  6. SmartFox中的類型轉換
  7. Visual Studio中相对路径中的宏定义,你不了解的宏定义都在这里!
  8. Linux 运维工程师学习成长路线上要经历哪四个阶段?
  9. IE缓存文件提取器 V2.1 绿色版
  10. word转HTML 基本版
  11. eviews建立时间序列模型_Eviews教程 Eviews进行时间序列分析教程
  12. 英语学习软件——《经典双语广告语大全》(图)
  13. ACM/ICPC 2018亚洲区预选赛北京赛站网络赛-B:Tomb Raider(模拟+二进制枚举子串)
  14. 聚合购物一站式采购平台HTML网站源码
  15. 使用Resnet网络对人脸图像分类识别出男女性别(包含数据集制作+训练+测试)
  16. libdrm学习-dumb buffer
  17. 计算机系统文件夹打不开,电脑系统的文件夹打不开可以试下这两个办法
  18. 那些害惨我们的伪科学(上)
  19. Python小记 正则
  20. Openstack Queens版本双节点架构笔记9,Ceph安装1:

热门文章

  1. zz数字图像的结课报告
  2. 博客园博客PDF生成器
  3. MFC中创建线程实例
  4. c#调用c++(Opencv)dll的实例
  5. c#中如何实现拷贝对象
  6. 类的本质 Objective-C基础
  7. proxifier代理失败原因_上海财务代理
  8. 解决Redmi 6 pro底部出现黑边问题
  9. 西山居php面试,西山居面试经验
  10. Android控件随手指的移动而移动