gpt4 book ai didi

mysqli扩展无法在PHP7下升级问题的解决

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章mysqli扩展无法在PHP7下升级问题的解决由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

前言 。

这几天在想部署一个OAuth服务,找了一个PHP的开源实现,由于要求的PHP版本比较高,就打算在自己的ECS上(PHP7.1)先测试下,没想到遇到了一些问题.

首先发现mysqli扩展没有装(mysql扩展在PHP7中已经废弃了),原来PHP7是使用ondrej/php源安装的,可运行 apt-cache search php7 | grep mysql 居然发现没有任何的mysql扩展,包括连php-memcached扩展也没有,可实际上该扩展我已经安装了.

百思不得其解,我仔细查看了ondrej/php PPA的页面 https://launchpad.net/~ondrej/+archive/ubuntu/php,发现这个ppa包已经不支持Ubuntu14.4了(而我的机器目前正好是此版本),如下图:

mysqli扩展无法在PHP7下升级问题的解决

为了验证这一点,我在同事的Ubuntu16下装了ondrej/php包,进行测试:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ apt-cache policy php7.3
php7.3:
  Installed: (none)
  Candidate: 7.3.7-2+ubuntu16.04.1+deb.sury.org+1
  Version table:
   7.3.7-2+ubuntu16.04.1+deb.sury.org+1 500
   500 http: //ppa.launchpad.net/ondrej/php/ubuntu xenial/main i386 Packages
 
$ apt-cache policy php-memcached
php-memcached:
  Installed: (none)
  Candidate: 3.1.3+2.2.0-1+ubuntu16.04.1+deb.sury.org+1
  Version table:
   3.1.3+2.2.0-1+ubuntu16.04.1+deb.sury.org+1 500
   500 http: //ppa.launchpad.net/ondrej/php/ubuntu xenial/main i386 Packages
   2.2.0-51-ge573a6e+2.2.0-2build2 500
   500 http: //mirrors.tencentyun.com/ubuntu xenial/universe i386 Packages

从中可以看出ondrej/php包在Ubuntu16下可以安装PHP7.3,同时也包含php-memcached扩展.

验证ondrej/php不支持Ubuntu14后,我找了一个PHP PPA包serp2002/php7-backport,在安装之前我先卸载了ondrej/php包:

?
1
$ LC_ALL=C.UTF-8 add-apt-repository --remove ppa:ondrej/php

然后:

?
1
2
3
4
5
6
7
8
9
10
$ apt-cache show php7.3-mysql 
Package: php7.3-mysql
Source: php7.3
Priority: optional
Section: php
Installed-Size: 403
Maintainer: Debian PHP Maintainers <team+pkg-php@tracker.debian.org>
Architecture: i386
Version: 7.3.7-2+ubuntu16.04.1+deb.sury.org+1
Provides: php-mysqli, php-mysqlnd, php-pdo-mysql, php7.3-mysqli, php7.3-mysqlnd, php7.3-pdo-mysql

可见 php7.3-mysql 这个包实际上包含了很多mysql相关的包,比如 mysqli或pdo,如果你单独安装其中一个:

?
1
2
3
$ apt-get install php7.3-mysqli
N: Can 't select versions from package ' php7.3-mysqli' as it is purely virtual
N: No packages found

会提示你php7.3-mysqli是一个虚拟的包。最终顺利安装完成.

总结 。

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我的支持.

原文链接:https://mp.weixin.qq.com/s?__biz=MzAwOTU4NzM5Ng==&mid=2455770949&idx=1&sn=0e4ec590d2d2120cec16e6a66b9d13c6 。

最后此篇关于mysqli扩展无法在PHP7下升级问题的解决的文章就讲到这里了,如果你想了解更多关于mysqli扩展无法在PHP7下升级问题的解决的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com