PHP获取文件扩展名的方法

 更新时间:2017年7月6日 23:33  点击:1425
本篇文章结合实例为大家介绍了PHP获取文件扩展名的方法,很有一定的参考价值,有需要的朋友就来看一看吧。

本文实例总结了PHP获取文件扩展名的方法。分享给大家供大家参考,具体如下:

在PHP面试中或者考试中会有很大几率碰到写出五种获取文件扩展名的方法,下面是我自己总结的一些方法

 

 代码如下复制代码

$file='需要进行获取扩展名的文件.php'

//第一种,根据.拆分,获取最后一个元素的值

functiongetExt1{

returnend(explode(".",$file);)

}

//第二种,获取最后一个点的位置,截取

functiongetExt2{

returnsubstr($file,strrpos($file,'.')+1);

}

//第三种,根据.拆分,获取最后一个元素的值

functiongetExt3($file) {

returnarray_pop(explode('.',$file));

}

//第四种,pathinfo

functiongetExt5($file) {

$arr=pathinfo($file);

return$arr['extension'];

//或者这样return pathinfo($file,PATHINFO_EXTENSION);

}

//第五种,正则,子模式

functiongetExt6$file){

preg_match("/(gif | jpg | png)$/",$file,$match);

$match=$match[0];

}

//第六种,正则反向引用

functiongetExt7($file){

$match=preg_replace("/.*\.(\w+)/","\\1",$file);

echo$match;

}

 

本篇文章结合实例为大家介绍了python实现list元素按关键字相加减的方法,有需要的朋友可以来参考一下。

本文实例讲述了python实现list元素按关键字相加减的方法。分享给大家供大家参考,具体如下:

Python list中的元素按关键字相加或相减:

 

 代码如下复制代码

# coding=utf-8

# 两个list按关键字相加或相减

defListAdd(list1, list2, bAdd=True):

  ifbAdd==False:

    list2=[(k,-v)for(k, v)inlist2]

  d={}

  list0=list1+list2

  for(k, v)inlist0:

    d.setdefault(k,0)  # 设置字典元素初始值

    d[k]+=v       # 对字典中的元素按关键字相加

  ret=list(d.items())   # 字典转换成list

  ret=sorted(ret)     # 对list排序

  returnret

if__name__=='__main__':

  a=[("s1",10), ("s2",13), ("s3",25), ("s7",30)]

  b=[("s1",22), ("s3",16), ("s10",8)]

  print("a=", a)

  print("b=", b)

  ret1=ListAdd(a, b)   # ret1 = a + b

  print("ret1=", ret1)

  ret2=ListAdd(a, b,False)# ret2 = a - b

  print("ret2=", ret2)

 

运行:

 

 代码如下复制代码

E:\Program\Python>del.py

a=[('s1',10), ('s2',13), ('s3',25), ('s7',30)]

b=[('s1',22), ('s3',16), ('s10',8)]

ret1=[('s1',32), ('s10',8), ('s2',13), ('s3',41), ('s7',30)]

ret2=[('s1',-12), ('s10',-8), ('s2',13), ('s3',9), ('s7',30)]

 

本篇文章为大家介绍了PHP中的日期时间处理利器实例(Carbon),很有一定的参考价值,有需要的朋友就来看一看吧。

 

Carbon介绍

Carbon是PHP中很人性化的时间日期处理插件,github拥有接近5000个 star。

github地址为:https://github.com/briannesbitt/Carbon

Carbon基本用法

 

 代码如下复制代码

//1、基本应用

$now= Carbon::now();         //2016-11-03 14:13:16

$today= Carbon::today();       //2016-11-03 00:00:00

$tomorrow= Carbon::tomorrow();    //2016-11-04 00:00:00

$yesterday= Carbon::yesterday();   //2016-11-02 00:00:00

 

//2、判断是否是某一天(2016-11-03(周四)举例)

$now= Carbon::now();

var_dump($now->isWeekend());//false 因为周四不是周末

var_dump($now->isWeekday());//true 因为周四是工作日

var_dump($now->isThursday());//true 因为今天是周四

$now->isToday();

$now->isTomorrow();

$now->isFuture();

$now->isPast();

 

//3、创建某一天的carbon对象并且进行加减计算

$date= Carbon::create(2016, 12, 25, 0, 0, 0);//2016-12-25 00:00:00

$next_year=$date->addYears(2);//2018-12-25 00:00:00

$past_year=$date->subYears(2);//2014-12-25 00:00:00

$next_month=$date->addMonths(2);//2017-02-25 00:00:00

$past_month=$date->subMonths(2);//2016-10-25 00:00:00

$next_day=$date->addDays(2);//2016-12-27 00:00:00

$past_day=$date->subDays(2);//2016-12-23 00:00:00

...更有addWeekdays()、addWeeks()、addHours()等方法

 

//4、将carbon对象转换成string类型

$dt= Carbon::create(1975, 12, 25, 14, 15, 16);

echo$dt->toDateString();            // 1975-12-25

echo$dt->toFormattedDateString();        // Dec 25, 1975

echo$dt->toTimeString();            // 14:15:16

echo$dt->toDateTimeString();          // 1975-12-25 14:15:16

echo$dt->toDayDateTimeString();         // Thu, Dec 25, 1975 2:15 PM

 

上面介绍的是一些基本的Carbon使用。Carbon最大的特点就是灵活、人性化。

以上就是本文的全部内容,希望对大家的学习有所帮助。

原文链接:https://segmentfault.com/a/1190000007370334

 

 

本篇文章为大家介绍了PHP利用ffmpeg提取视频中音频与视频画面的相关资料,很有参考价值,一起来看一看吧。

 

前言

FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换。

FFmpeg的用户有Google,Facebook,Youtube,优酷,爱奇艺,土豆等。

组成

       1、libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能,包含demuxers和muxer库;

       2、libavcodec:用于各种类型声音/图像编解码;

       3、libavutil:包含一些公共的工具函数;

       4、libswscale:用于视频场景比例缩放、色彩映射转换;

       5、libpostproc:用于后期效果处理;

       6、ffmpeg:是一个命令行工具,用来对视频文件转换格式,也支持对电视卡实时编码;

       7、ffsever:是一个HTTP多媒体实时广播流服务器,支持时光平移;

       8、ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示;

提取视频中音频与视频画面

想要提取视频中的音频信息,首选的技术是ffmpeg,网上的绝大多数ffmpeg使用教程都是:

比如你的文件是 test.mp4

分离视频出来:ffmpeg -i test.mp4 -vcodec copy -an 视频流.avi

分离音频出来:ffmpeg -i test.mp4 -acodec copy -vn 音频流.mp3

用这样的方法,提取视频是没有问题的。但在提取音频时,我遇到了以下错误:

 代码如下复制代码
Invalid  audio stream. Exactly one MP3 audio stream is required. could not write  header for output file #0 (incorrect codec parameters ) invalid  argument

其实,简单地提取音视频并不需要这么复杂,只要执行以下两行就行了:

分离视频出来:ffmpeg -i test.mp4 视频流.avi

分离音频出来:ffmpeg -i test.mp4 音频流.mp3

[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • PHP成员变量获取对比(类成员变量)

    下面本文章来给大家介绍在php中成员变量的一些对比了,文章举了四个例子在这例子中分别对不同成员变量进行测试与获取操作,下面一起来看看。 有如下4个代码示例,你认...2016-11-25
  • Jupyter Notebook读取csv文件出现的问题及解决

    这篇文章主要介绍了JupyterNotebook读取csv文件出现的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2023-01-06
  • php 获取用户IP与IE信息程序

    php 获取用户IP与IE信息程序 function onlineip() { global $_SERVER; if(getenv('HTTP_CLIENT_IP')) { $onlineip = getenv('HTTP_CLIENT_IP');...2016-11-25
  • php获取一个文件夹的mtime的程序

    php获取一个文件夹的mtime的程序了,这个就是时间问题了,对于这个问题我们来看小编整理的几个例子,具体的操作例子如下所示。 php很容易获取到一个文件夹的mtime,可以...2016-11-25
  • Photoshop打开PSD文件空白怎么解决

    有时我们接受或下载到的PSD文件打开是空白的,那么我们要如何来解决这个 问题了,下面一聚教程小伙伴就为各位介绍Photoshop打开PSD文件空白解决办法。 1、如我们打开...2016-09-14
  • 如何获取网站icon有哪些可行的方法

    获取网站icon,常用最简单的方法就是通过website/favicon.ico来获取,不过由于很多网站都是在页面里面设置favicon,所以此方法很多情况都不可用。 更好的办法是通过google提供的服务来实现:http://www.google.com/s2/favi...2014-06-07
  • 解决python 使用openpyxl读写大文件的坑

    这篇文章主要介绍了解决python 使用openpyxl读写大文件的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13
  • C#实现HTTP下载文件的方法

    这篇文章主要介绍了C#实现HTTP下载文件的方法,包括了HTTP通信的创建、本地文件的写入等,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • SpringBoot实现excel文件生成和下载

    这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • php无刷新利用iframe实现页面无刷新上传文件(1/2)

    利用form表单的target属性和iframe 一、上传文件的一个php教程方法。 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失...2016-11-25
  • jquery如何获取元素的滚动条高度等实现代码

    主要功能:获取浏览器显示区域(可视区域)的高度 : $(window).height(); 获取浏览器显示区域(可视区域)的宽度 :$(window).width(); 获取页面的文档高度 $(document).height(); 获取页面的文档宽度 :$(document).width();...2015-10-21
  • PHP Warning: PHP Startup: 扩展名称: Unable to initialize module

    下面我们来看一篇关于PHP Warning: PHP Startup: 扩展名称: Unable to initialize module问题的解决办法,具体如下。 当安装完PHP 某项扩展后重启apache, php -m...2016-11-25
  • php批量替换内容或指定目录下所有文件内容

    要替换字符串中的内容我们只要利用php相关函数,如strstr,str_replace,正则表达式了,那么我们要替换目录所有文件的内容就需要先遍历目录再打开文件再利用上面讲的函数替...2016-11-25
  • PHP文件上传一些小收获

    又码了一个周末的代码,这次在做一些关于文件上传的东西。(PHP UPLOAD)小有收获项目是一个BT种子列表,用户有权限上传自己的种子,然后配合BT TRACK服务器把种子的信息写出来...2016-11-25
  • jquery获取div距离窗口和父级dv的距离示例

    jquery中jquery.offset().top / left用于获取div距离窗口的距离,jquery.position().top / left 用于获取距离父级div的距离(必须是绝对定位的div)。 (1)先介绍jquery.offset().top / left css: 复制代码 代码如下: *{ mar...2013-10-13
  • Zend studio文件注释模板设置方法

    步骤:Window -> PHP -> Editor -> Templates,这里可以设置(增、删、改、导入等)管理你的模板。新建文件注释、函数注释、代码块等模板的实例新建模板,分别输入Name、Description、Patterna)文件注释Name: 3cfileDescriptio...2013-10-04
  • Jquery 获取指定标签的对象及属性的设置与移除

    1、先讲讲JQuery的概念,JQuery首先是由一个 America 的叫什么 John Resig的人创建的,后来又很多的JS高手也加入了这个团队。其实 JQuery是一个JavaScript的类库,这个类库集合了很多功能方法,利用类库你可以用简单的一些代...2014-05-31
  • AI源文件转photoshop图像变模糊问题解决教程

    今天小编在这里就来给photoshop的这一款软件的使用者们来说下AI源文件转photoshop图像变模糊问题的解决教程,各位想知道具体解决方法的使用者们,那么下面就快来跟着小编...2016-09-14