位置: 编程技术 - 正文

PHP扩展迁移为PHP7扩展兼容性问题记录(php数据迁移)

编辑:rootadmin

推荐整理分享PHP扩展迁移为PHP7扩展兼容性问题记录(php数据迁移),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php 转go,php迁移java,php扩展sg11,php扩展名,php扩展sg11,php扩展名,php 扩展,php数据迁移,内容如对您有帮助,希望把文章链接给更多的朋友!

PHP7扩展编写的时候,提供的一些内核方法和之前的PHP之前的版本并不能完全兼容。有不少方法参数做了调整。下面是在迁移过程中遇到的一些问题。记录下来,避免大家再踩坑。

add_assoc_stringl

方法参数改为四个。

add_assoc_stringl(parray, key, value, value_len);

迁移的时候,只要把最后一个参数删除即可。

add_assoc_string

方法参数从四个改为了三个。

add_assoc_stringl(parray, key, value);

迁移的时候,只要把最后一个参数删除即可。

add_next_index_stringl

方法参数从四个改为了三个。

add_next_index_stringl(parray, value, value_len);

迁移的时候,只要把最后一个参数删除即可。

add_next_index_string

方法参数从三个改为了两个。

add_next_index_string(parray, value);

迁移的时候,只要把最后一个参数删除即可。

RETURN_STRINGL

方法参数从三个改为了二个。

RETURN_STRINGL(value, length);

迁移的时候,只要把最后一个参数删除即可。

错误:‘INT_MAX' 在此作用域中尚未声明

PHP扩展迁移为PHP7扩展兼容性问题记录(php数据迁移)

原因为深入研究。在 #include "php.h" 上面加上一行

解决。

创建类

可以参考mysqli扩展mysqli.c文件中的 mysqli_objects_new 方法。

变量声明从堆上分配,改为栈上分配。

如,原先代码为

改为

方法参数从六个改为了四个。

迁移的时候,只要把第三个和第五个参数删除即可。

错误:‘Z_TYPE_PP' 在此作用域中尚未声明

已经没有Z_TYPE_PP宏,只有Z_TYPE 和Z_TYPE_P宏方法的定义。

h2错误:不能从 ‘zend_string*' 转换到 ‘const char*'

PHP7中对于字符串的处理使用zend_string进行存储。如果想把zend_string 转为 const char 。需要使用 ZSTR_VAL()宏方法。代码如下:

错误:‘IS_BOOL' 在此作用域中尚未声明

已经没有IS_BOOL类型。而是分为了IS_TRUE 和 IS_FALSE.

错误:‘Z_BVAL' 在此作用域中尚未声明

已经没有Z_BVAL宏。但是可以通过类型是否是 IS_TRUE和IS_FALSE来判定。

如果类型为IS_TRUE,则值为true。如果类型为IS_FALSE则值为false。

错误:‘zend_object_store_get_object' 在此作用域中尚未声明

增加如下代码:

然后把zend_object_store_get_object改为Z_USEROBJ_P即可。

注意,user_object是你定义的结构体。

以上所述是针对PHP扩展迁移为PHP7扩展兼容性问题记录的相关叙述,希望对大家有所帮助。

ECshop 迁移到 PHP7版本时遇到的兼容性问题 在PHP7上安装ECShopV2.7.3时,报错!Deprecated:MethodswiththesamenameastheirclasswillnotbeconstructorsinafutureversionofPHP;ECShasadeprecatedconstructorin/usr/local/nginx/html/ecshop/upload/inc

ThinkPHP设置禁止百度等搜索引擎转码(简单实用) 网站在移动端的阅读不可避免的会遇到转码问题,作为国内搜索引擎老大百度,自然要做技术的领头人了,做了百度转码,有些网站经过转码之后达到

在Mac OS的PHP环境下安装配置MemCache的全过程解析 安装服务端memcache是项目名,而在服务端的驻留进程叫memcached(linux的守护进程一般都是在后面加个d)。在OSX下使用brew可以快速安装memcache:$sudobrewinstallmem

标签: php数据迁移

本文链接地址:https://www.jiuchutong.com/biancheng/289839.html 转载请保留说明!

上一篇:在Mac OS上搭建PHP的Yii框架及相关测试环境(mac如何使用php)

下一篇:ECshop 迁移到 PHP7版本时遇到的兼容性问题(ecshop app搭建)

  • 个人所得税年底返税
  • 长期待摊费用摊销表
  • 事业单位借款怎么做账
  • 募捐建议
  • 员工成本是员工薪资的多少倍
  • 公司茶水间备的零食该计入什么会计科目核算?
  • 有了营业执照就可以买社保了吗
  • 季度所得税预缴可以弥补以前年度亏损吗
  • 跨地区经营建筑企业预缴增值税可以先开票后预缴吗
  • 实收资本印花税减免税优惠政策2019
  • 报税显示未进行抄报税
  • 税务稽查的四个环节
  • 限制性股票股利会计处理
  • 老板带员工出去吃饭
  • 或有负债可以是现时义务吗
  • 收入不交税怎么处理
  • 机器设备计提折旧年限是多少
  • 注销税务登记后多久注销工商登记
  • 餐查账征收企业所得税会计分录?
  • windows11怎么创建宽带拨号连接图标
  • 公司车过户给个人流程
  • 国外交工作的基本出发点和落脚点是
  • 股东个人财产转让流程
  • 如何在excel中运算
  • 查账补交以前年度印花税分录
  • nalntsrv.exe - nalntsrv是什么进程 有什么用
  • 季度交企业所得税是按照什么来交的
  • javascript局部变量
  • php单独运行
  • 关联方借款利息所得税前扣除
  • 私募股权基金备案流程
  • 从事广告代理业工作
  • laravel模板引擎
  • 公司注销后进项税可以转移吗
  • jquery和php
  • 未摊销完的房租转哪个科目
  • 税控机维护费抵扣分录
  • 专利代理服务费计入什么科目
  • php加密zend
  • Win11 Build 23435 预览版今日发布: 文件管理器引入图库功能
  • 母公司将子公司的资产负债和当期损益
  • 货到付款付的是什么费用
  • 扶贫小额信贷分析报告
  • 企业的所有分类
  • 印花税的缴税对象是
  • 土地作为无形资产入账依据
  • 兼职人员的工资怎么做账
  • 电子产品报废清理是否缴纳教育附加税
  • 不确认递延所得税资产的特殊情况举例
  • 应付账款坏账损失的会计分录
  • 写字楼租金
  • 劳保用品费用计入什么科目
  • 何为居民企业
  • 应收票据周转率怎么分析
  • 机动车临时号牌怎么贴
  • 购进材料,已付,材料尚未验收入库
  • 本年利润要结转吗为什么
  • 年末本年利润没有结转影响报税吗
  • 兼职工资怎么做账
  • 免税收入包括哪些项目
  • 建账的基本要求
  • sql server2005一个表中可以设置
  • mac怎样下载
  • 怎样破解bios密码
  • 技巧步骤
  • 隐藏的系统
  • win8怎么设置开机直接进入桌面
  • 关机你的电脑遇到问题,需要重新启动,我们只收集
  • win10系统如何关闭
  • windows8.1控制面板
  • 删除系统桌面
  • html模板 js
  • easyui getselections
  • JavaScript事件 "事件对象"的注意要点
  • jquery获取文件大小
  • jquery控制css样式
  • 新疆地方税务局举报电话
  • 广东省电子税务局app
  • 世界近代史的改革有哪些
  • 代账公司盈利水平如何
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设