公司使用PHP的Phalcon框架做后端。Phalcon最大的特点就是底层由C语言实现,使用Phalcon框架必须要安装php_phalcon.dll扩展。之前的是使用PHP7.2的版本,后面考虑性能和开发效率的问题,升级到PHP7.3。本地开发环境PHP升级很方便,将版本切换一下即可。然后就出现了如下报错。

百度之后,发现相关的资料很少,而且质量很差,基本没办法解决我的问题。
为了排除其他因素,我对php.ini文件的extension进行了测试,最后确定就是php_phalcon.dll这个扩展的问题。
为了查看是不是安装步骤的错误,我重新去看了Phalcon的文档,根据文档的指引找到了Phalcon在github上的release,才发现php_phalcon.dll是需要针对不同版本使用不同的dll文件的。
重新下载了适配PHP7.3的dll文件,包括nts版本和非nts版本,PC适配的是非nts版本,如果使用nts版本安装会出现如下报错。

附上github地址:https://github.com/phalcon/cphalcon/releases/tag/v3.4.4
Phalcon文档地址:https://docs.phalconphp.com/3.4/zh-cn/

切换PHP版本导致Phalcon拓展失效的更多相关文章

  1. BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法

    最近一直在做互金平台,做到后台提交表单的时候出现验证提交数据一直没有提交的问题.于是百度了一下.果然是版本问题造成的.幸好找到了问题所在.我一直仿照的是东钿原微信平台的做法,但是使用byond的后台框 ...

  2. 在macOS上通过pyenv安装和切换多版本Python

    1. 安装homebrew 官网 http://brew.sh/index_zh-cn.html 打开终端,在终端中粘贴如下脚本 /usr/bin/ruby -e "$(curl -fsSL ...

  3. mac下通过brew切换php版本

    第一步,先安装 brew    Brew 是 Mac 下面的包管理工具,通过 Github 托管适合 Mac 的编译配置以及 Patch,可以方便的安装开发工具. Mac 自带ruby 所以安装起来很 ...

  4. linux上怎么切换不同版本的arm-linux-gcc?只需改一行函数

    linux上怎么切换不同版本的arm-linux-gcc?只需改一行函数 ln -s /usr/local/arm/3.4.1/bin/arm-linux-gcc /usr/bin/arm-linux ...

  5. mac 切换php版本

    通过brew安装的php可以通过brew link和brew unlink来切换不同版本 #brew list #brew unlink php56 #brew link php55

  6. 探究 CSS 混合模式\滤镜导致 CSS 3D 失效问题

    今天在写一个小的 CSS Demo,一个关于 3d 球的旋转动画,关于 CSS 3D,少不了会使用下面这几个属性: { transform-style: preserve-3d; perspectiv ...

  7. 使用nvm管理node不同版本,安装,环境配置,切换不同版本的node版本

    文章包含以下内容: 一.下载地址 二.nvm-noinstall.zip安装 三.nvm-setup.zip安装 四.测试安装以及使用 一.下载地址 https://github.com/coreyb ...

  8. lnmp 切换PHP版本,并且安装swoole

    lnmp 切换php版本 进入 lnmp 安装的目录,进入install.sh 的目录执行: sudo ./install.sh mphp 备注: find / -name install.sh 备注 ...

  9. 使用GNVM工具高效切换node版本

    在开发中,有时候需要在多个node版本之间切换,重复手动下载安装node安装包来切换版本很麻烦,在Mac系统中可以使用nvm工具,而windows系统无法使用nvm工具.gnvm解决了在windows ...

随机推荐

  1. kong-dashbord本地安装gulp打包报错的解决办法

    本地安装kong-dashbord执行npm run build 报如下错误 gulp[]: ../src/node_contextify.cc::]->IsString()' failed. ...

  2. codeforces#1183H. Subsequences(字符串dp)

    题目链接: http://codeforces.com/contest/1183/problem/H 题意: 给出一个长度为$n$的字符串,得到$k$个子串,子串$s$的花费是$n-|s|$ 计算最小 ...

  3. mybatis 操作其他数据库的数据表

    配置文件里面配置的数据库只是默认数据库,并不是只能操作默认数据库.(被自己蠢死了,唉) 1. 注解方式 使用BaseMapper方式操作数据表时,在表对应的实体类上的 @table 注解描述表名时加上 ...

  4. cmd ora-12560协议适配器错误

    这个问题我解决了很久,其实问题的关键在于我在本机安装了一个Oracle11g数据库以及安装了一个Oracle Client,导致在使用sqlplus / as sysdba链接时出现报协议适配器的错误 ...

  5. Go语言fmt.Printf使用指南(占位符总结)

    本文整理了Go语言的标准输出流(fmt.Printf)在打印到屏幕时的格式化输出操作. 在这里按照占位符将被替换的变量类型划分,更方便查询和记忆. 总结 1.1 General(通用占位符) 占位符 ...

  6. vsCode安装todo插件

    使用过IDEA或者WebStrom的阿媛应该都知道他们都有一个TODO功能,方便我们跟踪注释,或者说是我们在项目代码里面所做的标记:但是如果你现在在使用vsCode,你会发现,没有TODO功能,幸好, ...

  7. .SpringIOC容器

    创建对象 SpringIOC容器,是spring核心内容. 作用: 创建对象 & 处理对象的依赖关系 IOC容器创建对象: 创建对象, 有几种方式: 1) 调用无参数构造器 2) 带参数构造器 ...

  8. html分割线

    分割线效果图 完整html代码如下 <!DOCTYPE html> <html> <head> <meta charset= "utf-8" ...

  9. Pytorch-tensor的维度变化

    引言 本篇介绍tensor的维度变化. 维度变化改变的是数据的理解方式! view/reshape:大小不变的条件下,转变shape squeeze/unsqueeze:减少/增加维度 transpo ...

  10. 树莓派-CentOS-Minimal arm版的设置

    将镜像用 balenaEtcher 写入到树莓派SD卡并启动后,需要对其进行一些设置才能正常使用. 1. 用户名 root 密码 centos 2. 扩展 rootfs 到最大可用空间:cat REA ...