MacOS下PHP7.1升级到PHP7.4.15的方法


Posted in PHP onFebruary 22, 2021

最近写SDK的时候需要用到object类型提示符,PHPStorm智能提示说需要PHP7.2以上才能支持这种类型提示。
我一查我本机的PHP是7.1.30版本,于是考虑升级一下PHP版本。
首先要尝试使用如下命令进行升级:

brew update 
brew upgrade php@7.4

第一个遇到的报错如下所示:

git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
This restriction has been made on GitHub's request because updating shallow
clones is an extremely expensive operation due to the tree layout and traffic of
Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
automatically to avoid repeatedly performing an expensive unshallow operation in
CI systems (which should instead be fixed to not use shallow clones). Sorry for
the inconvenience!

然后按照提醒执行"git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow"命令还会报错:

fatal: dumb http transport does not support shallow capabilities

由此怀疑homebrew-core的源可能因为一些不可抗力的原因无法正常使用,从而导致fetch操作失败。可以考虑换成国内的源,编写shell如下所示:

# 切换到homebrew-core目录下
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
# 设置homebrew源为国内的中科大镜像
git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
# 更新homebrew-core
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow

执行之后可以看到如下输出,然后就可以顺利执行brew update了。

remote: Enumerating objects: 539863, done.
remote: Counting objects: 100% (539826/539826), done.
remote: Compressing objects: 100% (194417/194417), done.
remote: Total 530481 (delta 341532), reused 521981 (delta 333211)
Receiving objects: 100% (530481/530481), 191.29 MiB | 9.18 MiB/s, done.
Resolving deltas: 100% (341532/341532), completed with 8120 local objects.

安装php7.4的方法很简单,可以使用源码下载编译的方法:

brew install --build-from-source php@7.4

可以看到大量输出,最后没有报错就可以完成php7.4的安装啦。

要让终端里面之前的PHP版本切换成功还需要在.bash_profile中设置环境变量,添加如下语句:

export PATH="/usr/local/opt/php@7.4/bin:$PATH"
export PATH=/usr/local/opt/php@7.4/sbin:$PATH

最后执行source ~/.bash_profile命令完成生效操作。

为了确认是否真的生效,可以执行如下命令php -v
得到输出如下即为正确:

PHP 7.4.15 (cli) (built: Feb 21 2021 20:08:10) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
  with Zend OPcache v7.4.15, Copyright (c), by Zend Technologies

参考的资料如下:

homebrew国内源替换办法php7.2升级到php7.4

到此这篇关于MacOS下PHP7.1升级到PHP7.4.15的方法的文章就介绍到这了,更多相关PHP7.1升级到PHP7.4.15内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
PHP调用三种数据库的方法(1)
Oct 09 PHP
UCenter Home二次开发指南
May 28 PHP
Drupal读取Excel并导入数据库实例
Mar 02 PHP
ThinkPHP中U方法的使用浅析
Jun 13 PHP
php自定义apk安装包实例
Oct 20 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
Mar 27 PHP
如何使用纯PHP实现定时器任务(Timer)
Jul 31 PHP
PHP json_encode() 函数详解及中文乱码问题
Nov 05 PHP
Yii2中OAuth扩展及QQ互联登录实现方法
May 16 PHP
PHP检查网站是否宕机的方法示例
Jul 24 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
May 25 PHP
PDO::inTransaction讲解
Jan 28 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
Dec 30 #PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
Dec 29 #PHP
PHP序列化和反序列化深度剖析实例讲解
Dec 29 #PHP
PHP实现简单注册登录系统
Dec 28 #PHP
php的lavarel框架中join和orWhere的用法
Dec 28 #PHP
php中yar框架实例用法讲解
Dec 27 #PHP
php中数组最简单的使用方法
Dec 27 #PHP
You might like
PHP自动更新新闻DIY
2006/10/09 PHP
zf框架的session会话周期及次数限制使用示例
2014/03/13 PHP
ThinkPHP使用心得分享-分页类Page的用法
2014/05/15 PHP
PHP版本常用的排序算法汇总
2015/12/20 PHP
asp.net HttpHandler实现图片防盗链
2009/11/09 Javascript
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
javascript 从if else 到 switch case 再到抽象
2010/07/17 Javascript
不使用浏览器运行javascript代码的方法
2013/07/24 Javascript
AngularJS初始化过程分析(引导程序)
2014/12/06 Javascript
JavaScript实现的多个图片广告交替显示效果代码
2015/09/04 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
Js与Jq获取浏览器和对象值的方法
2016/03/18 Javascript
jQuery判断元素是否显示 是否隐藏的简单实现代码
2016/05/19 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
2016/10/10 Javascript
基于JavaScript实现本地图片预览
2017/02/08 Javascript
React Native 集成jpush-react-native的示例代码
2017/08/16 Javascript
Javascript操作select控件代码实例
2020/02/14 Javascript
使用typescript快速开发一个cli的实现示例
2020/12/09 Javascript
[00:32]2018DOTA2亚洲邀请赛出场——LGD
2018/04/04 DOTA
[00:08]DOTA2勇士令状等级奖励“天外飞星”
2019/05/24 DOTA
通过数据库向Django模型添加字段的示例
2015/07/21 Python
python+pygame简单画板实现代码实例
2017/12/13 Python
Calphalon美国官网:美国顶级锅具品牌
2020/02/05 全球购物
如何定义一个可复用的服务
2014/09/30 面试题
机电一体化专业应届本科生求职信
2013/09/27 职场文书
入学生会自荐书范文
2014/02/05 职场文书
收银员岗位职责
2014/02/07 职场文书
2015年双拥工作总结
2015/04/08 职场文书
2015年生产车间工作总结
2015/04/22 职场文书
反腐倡廉影片观后感
2015/06/08 职场文书
装修公司管理制度
2015/08/05 职场文书
课程设计感想范文
2015/08/11 职场文书
中秋节主题班会
2015/08/14 职场文书
医务人员医德医风心得体会
2016/01/25 职场文书
mybatis 解决从列名到属性名的自动映射失败问题
2021/06/30 Java/Android
HTML5页面打开微信小程序功能实现
2022/09/23 HTML / CSS