linux suse安装ffmpeg及php使用 发表于 2018-12-14 | 分类于 Php 一、获取ffmpeg1wget https://www.ffmpeg.org/releases/ffmpeg-4..tar.bz2 二、解压并编译安装12345678tar -xjvf ffmpeg-4.0.tar.bz2cd ffmpeg-4.0执行配置:./configure,此时或出现如下报错nasm/yasm not found or too old 三、参数值传输接收不到的情况123456789101112131415161718192021222324第一次传递的参数,在服务端接收参数正常,修改参数名后,给参数赋值,在服务端出现接收不到参数值的现象调试1:安装soapui,发起调用 -> 调用正常 判断:排除服务器端问题调试2:将参数值修改为固定字符串值,再发起调用 -> 依然接收不到 判断:排除参数赋值失效调试3:改变参数位置,再发起调用 -> 依然接收不到 判断:排除参数位置影响调试4:删除runtime缓存文件,再发起调用 -> 依然接收不到 判断:排除程序缓存文件影响调试5:重启apache或php-fpm,再发起调用 -> 依然接收不到 判断:排除web服务器环境问题调试6:本地wamp环境,发起调用 -> 接收正常 判断:soap环境差异问题导致,查找到是soap缓存的问题修改代码$soap = new \SoapClient('http://www.whatever.com/WebService.asmx?wsdl');为$soap = new \SoapClient('http://www.whatever.com/WebService.asmx?wsdl', array('cache_wsdl' => 0));发起调用 -> 接收正常 五、总结12参数名接收到,但参数值接收不到,这很怪异,一开始没有怀疑缓存原因,归根到底是对soap的基础理解得不够深刻。使用排除法定位问题的速度还是比较局限。透过现象去了解程序的本质,设计思想,对于分析、解决问题有很大的帮助