PHP getID3类的使用方法学习笔记【附getID3源码下载】


Posted in PHP onOctober 18, 2019

本文实例讲述了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 相关文章推荐
用cookies来跟踪识别用户
Oct 09 PHP
PHP与SQL注入攻击[一]
Apr 17 PHP
php开启安全模式后禁用的函数集合
Jun 26 PHP
php类中private属性继承问题分析
Nov 01 PHP
php中利用str_pad函数生成数字递增形式的产品编号
Sep 30 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
详解PHP中的mb_detect_encoding函数使用方法
Aug 18 PHP
ubuntu下配置nginx+php+mysql详解
Sep 10 PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
Apr 04 PHP
PHP错误处理函数register_shutdown_function使用示例
Jul 03 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
Aug 30 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
Aug 31 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
Oct 18 #PHP
tp5.1 实现setInc字段自动加1
Oct 18 #PHP
php 比较获取两个数组相同和不同元素的例子(交集和差集)
Oct 18 #PHP
thinkphp5 模型实例化获得数据对象的教程
Oct 18 #PHP
使用tp框架和SQL语句查询数据表中的某字段包含某值
Oct 18 #PHP
tp5 sum某个字段相加得到总数的例子
Oct 18 #PHP
基于laravel belongsTo使用详解
Oct 18 #PHP
You might like
极典R601SW收音机
2021/03/02 无线电
基于asp+ajax和数据库驱动的二级联动菜单
2010/05/06 PHP
PHP中通过加号合并数组的一个简单方法分享
2011/01/27 PHP
全面解读PHP的Yii框架中的日志功能
2016/03/17 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
2017/08/01 PHP
javascript textContent与innerText的异同分析
2010/10/22 Javascript
jcrop基本参数一览
2013/07/16 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
jquery插件jquery.LightBox.js实现点击放大图片并左右点击切换效果(附demo源码下载)
2016/02/25 Javascript
基于BootStrap Metronic开发框架经验小结【九】实现Web页面内容的打印预览和保存操作
2016/05/12 Javascript
Javascript中字符串replace方法的第二个参数探究
2016/12/05 Javascript
javascript简写常用的12个技巧(可以大大减少你的js代码量)
2020/03/28 Javascript
深入理解ES6 Promise 扩展always方法
2017/09/26 Javascript
JS函数内部属性之arguments和this实例解析
2018/10/07 Javascript
javascript中join方法实例讲解
2019/02/21 Javascript
element-ui组件中input等的change事件中传递自定义参数
2019/05/22 Javascript
Vue双向绑定实现原理与方法详解
2020/05/07 Javascript
微信小程序自定义扫码功能界面的实现代码
2020/07/02 Javascript
详细分析React 表单与事件
2020/07/08 Javascript
python遍历目录的方法小结
2016/04/28 Python
Python 模板引擎的注入问题分析
2017/01/01 Python
python利用Tesseract识别验证码的方法示例
2019/01/21 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
2019/08/05 Python
Python学习笔记之While循环用法分析
2019/08/14 Python
让IE6支持css3,让 IE7、IE8 都支持CSS3
2011/10/09 HTML / CSS
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
2020/08/19 HTML / CSS
英国100%防污和防水的靴子:Muck Boot Company
2020/09/08 全球购物
食品营养与检测应届生求职信
2013/11/08 职场文书
金融专业推荐信
2013/11/14 职场文书
团组织关系介绍信
2014/01/12 职场文书
合伙经营协议书
2014/04/18 职场文书
说明书怎么写
2014/05/06 职场文书
关于运动会的广播稿(10篇)
2014/09/12 职场文书
员工离职感谢信
2015/01/22 职场文书
2015团员个人年度总结
2015/11/24 职场文书
高并发下Redis如何保持数据一致性(避免读后写)
2022/03/18 Redis