AMFPHP1.4与PHP5.3及以上版本号不兼容问题的解决

近期在升级PHP5.4版本号,AMFPHP出现了兼容性问题。解决过程记录例如以下。

1、ereg类相关函数改动为preg相关函数。

2、通过错误日志输出的提示。将全部以静态方式调用的类函数加入statickeyword。

3、改动PHP配置文件。给data.timezone加入默认时区。

尽量使错误输出到日志,通常是些不兼容性问题。假设错误日志没输出能够使用Charles Proxy类的软件来查看HTTP传输的内容。

NetConnection.Call.BadVersion问题的产生主要是传输到Client的字节码有问题。原因一般有两个:

1、产生了错误。这个能够在PHP日志查看或通过Charles工具,Chrome自带调试等来查看HTTP内容是否显示了错误信息。

2、有不明的输出。

假设上面没问题。检查一下与AMFPHP相关的每一个文件是否有输出。一个特别的样例是UTF-8编码文件带有BOM标识,这个不会产生错误。可是会影响AMFPHP CLient端解码。

时间: 2024-10-18 15:52:05

AMFPHP1.4与PHP5.3及以上版本号不兼容问题的解决的相关文章

AMFPHP1.4与PHP5.3及以上版本不兼容问题的解决

最近在升级PHP5.4版本,AMFPHP出现了兼容性问题,解决过程记录如下. 1.ereg类相关函数修改为preg相关函数. 2.通过错误日志输出的提示,将所有以静态方式调用的类函数添加static关键字. 3.修改PHP配置文件,给data.timezone添加默认时区. 尽量使错误输出到日志,一般是些不兼容性问题,如果错误日志没输出可以使用Charles Proxy类的软件来查看HTTP传输的内容. NetConnection.Call.BadVersion问题的产生主要是传输到Client

php5.4以上运行yii框架出现问题的解决方法

Ubuntu Server 下安装 Mcrypt Php Extension http://blog.archean.me/2013/10/22/install-mcrypt-php-extension-on-ubuntu-server/ PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20090626/mcrypt.so’ – libmcrypt.so.4: cannot open shared object file: N

php php-5.6.4.tar.bz2 apache 兼容问题 child pid 27858 exit signal Segmentation fault

环境 [root envirotar]# uname -a Linux i2.6.32-431.23.3.el6.x86_64 #1 SMP Thu Jul 31 17:20:51 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Apache [[email protected] bin]# ./httpd -v Server version: Apache/2.4.10 (Unix) Server built: Dec 30 2014 10:31:54 第一次安

菜鸟调错(三)——Jboss与jdk版本号不兼容导致WebService调用出错

环境: jdk1.6 Jboss 5.1.0.GA 问题描写叙述: EJB公布webserivce已经成功,而且可以成功訪问wsdl文件: 使用axis1自带的sample/client下的类DynamicInvoker測试,程序报错. 错误信息: client: Exception in thread "main" AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException

【php】在Windows2003下的IIS配置php5.4

本文与<[php]在Windows2003下配置Apache2.4与php5.4>(点击打开链接)为姊妹篇,仅仅是php所用的server有点不同,这里一个是Apache2.4,一个是Windows2003自带的IISserver. 一.在Windows2003安装IIS 1.首先打开Windows2003的控制面板,查看是否有"管理工具",没有也不要紧,点击"加入或删除程序".有的话.能够直接进入第二步,IIS的配置. 2.在弹出的窗体,选择加入/删除

LINUX总结第13篇:LINUX下动态库及版本号控制

感觉讲得挺详细 注: ln 命令用法 ln –s 源文件 目标文件 (目标文件即为软链接文件) 可用ls -l查看软链接文件具体指向哪个文件 目录[-] 1. File libhello.c 2. File libhello.h 3. File main.c 前言 针对同一动态组件的不同版本链接和加载. 一.概念                  DLL HELL字面意思是DLL"灾难",是由于com组件(动态库)升级引起的程序不能运行的情况.        原因         有三

Centos6.4 + PHP5.5.11 + Mysql5.6.16 + Tnginx2.02 + Memcached1.4.17 + Redis2.2

/** author: 老炮 date: 2014/5/10 */ 1:准备工作 1.1 配置网卡 - 确保能上网 (dhcp方式或static方式) 1.1.1 配置ifcfg-eth0文件 [[email protected] log]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet UUID=e4b2d65f-c9c7-4f51-bfc1-3d06e9f7122e ONBOOT=yes NM_C

lamp 源码安装之 centos6.5源码安装之php5.6.9

下载php5.6.9包并解压 [[email protected] ~]# wget http://cn2.php.net/distributions/php-5.6.9.tar.bz2 [[email protected] ~]# tar xf php-5.6.9.tar.bz2 编译安装 我的编译选项如下 --prefix=/usr/local/php:定义安装的路径 --with-mysql=/usr/local/mysql :指定mysql安装目录 --with-mysqli=/usr/

版本号的管理

一.面临的问题 出于性能优化的考虑,通常资源服务器会对静态资源的HTTP响应首部添加Expires 或者Cache-Control: max-age设置失效时间,如下图: 这样,在失效时间到达之前,浏览器会使用缓存文件而不用重新发送HTTP请求.这就引起另一个问题:失效时间还未到,但是我们有新功能上线,如何通知浏览器弃用缓存,重新发送HTTP请求获取最新的文件? 二.版本号的用途 当URL有变化时,浏览器总是会重新发送HTTP请求尝试获取最新的文件.利用浏览器的这一特性,我们可以为静态资源的UR