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

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

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

2、通过错误日志输出的提示,将所有以静态方式调用的类函数添加static关键字。

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-06 05:01:54

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

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

近期在升级PHP5.4版本号,AMFPHP出现了兼容性问题.解决过程记录例如以下. 1.ereg类相关函数改动为preg相关函数. 2.通过错误日志输出的提示.将全部以静态方式调用的类函数加入statickeyword. 3.改动PHP配置文件.给data.timezone加入默认时区. 尽量使错误输出到日志,通常是些不兼容性问题.假设错误日志没输出能够使用Charles Proxy类的软件来查看HTTP传输的内容. NetConnection.Call.BadVersion问题的产生主要是传输

关于vs2013 mysql Ef框架中提示版本不兼容问题的解决办法

<runtime>     <assemblyBinding>       <dependentAssembly>         <assemblyIdentity name= "EntityFramework" culture= "neutral" publicKeyToken= "b77a5c561934e089" Retargetable= "Yes"/>        

php5.6之后的版本使用curl以@+文件名的方式上传文件无效的解决版本

使用curl上传文件使用[email protected]文件路径的方式,在php5.6以后的版本中无法使用了 官方文档给出明确解释 如果需要支持的话,可以将CURLOPT_SAFE_UPLOAD设置为false 或者使用CURLFile上传文件

DEDE里有个编码问题,不支持PHP5.4及以上版本!

公司新配置服务器,没有PHP环境,下载了个PHP5.5.25,配置完毕后,从另外一个服务器转移了一个DEDECMS做的网站,安装后,进入后台,恢复数据发现参数设置里的文本框,只要是中文信息,没有显示,或者新添加的中文信息没有显示,查找原因,DEDE中有些字符串在经 htmlspecialchars 函数转义之前正常,而在转义之后却变成了空字符串.PHP 从 5.4.0 版本开始第三个参数字符串编码的默认值改成了 UTF-8,而DEDE代码中的中文编码正好是 GB2312 编码的,跟现在的默认参数

spring定时任务包Quartz版本不兼容

使用spring定时任务包Quartz时,必须使用Quartz1.85以下版本的.     查看发现spring3.0.5中org.springframework.scheduling.quartz.CronTriggerBean继承了     org.quartz.CronTrigger(public class CronTriggerBeanextends CronTrigger),     而在quartz2.1.3中org.quartz.CronTrigger是个接口(publicabs

Selenium2学习-007-WebUI自动化实战实例-005-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary

此文主要讲述 Java 运行 Selenium 脚本时,因 Friefox 浏览器版本与 selenium-server-standalone-x.xx.x.jar 不兼容引起的 org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary 报错解决方法. 希望能对初学 Selenium2 WebUI 自动化测试编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激! 之前给朋友初步介绍了 S

低版本系统兼容的ActionBar(二)ActionProvider+分离式ActionBar+分离式的ActionMode

       这篇文章主要讲的是在低版本兼容的ActionBar中实现自定义的ActionProvider,ShareActionProvider的使用方法,如何实现分离式ActionBar,外加在分离式ActionBar上的ActionMode的效果. 一.自定义ActionProvider 建立一个类,继承android.support.v4.view.ActionProvider,然后复写里面的方法即可.主要就是初始化视图和相应点击事件. 范例一: SettingsActionProvid

Gradle &#39;MYasprj&#39; project refresh failed Error:CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容

Gradle ‘MYasprj’ project refresh failed Error:CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容.请查看计算机的系统信息,了解是否需要 x86 (32 位)或 x64 (64 位)版本的程序,然后联系软件发布者. 解决方案: 你开发项目的引用Javajdk,与本机安装的Java jdk版本不一致,打开项目后,在project structure里面更改一下本机的真实的java jdk路径.  Gr

低版本系统兼容的ActionBar(三)自定义Item视图+进度条的实现+下拉导航+透明ActionBar

       一.自定义MenuItem的视图 custom_view.xml (就是一个单选按钮) <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android