Mac下php 5升级到php 7的步骤详解


Posted in PHP onApril 26, 2017

前言

在MAC OS X 10.11中php的版本是5.5的,近来一年多里,看到了很多关于php7介绍,以为php7增加了很多新特性,也删除了原来很多的老特性,所以一直以来并没想去尝试使用php7,但今天去php官网上认真的看了一下php7的新特性,发现其实php7最大的提升在于性能,虽然在语法上增加了很多新特性,但不影响开发,并且能很好的兼容以前php的代码,在这里简要的说明一下php7的新特性,具体的说明请移步到官网去看。

移除的一些特性

     1.移除一些旧的扩展,被移迁移到了PECL(例如:mysql_*)

     2.移除SAPIs的支持

     3.<?<? language=“php”这样的标签被移除了

     4.16进制的字符串转换被废除了

//PHP5
"0x10" == "16"
 
//PHP7
"0x10" != "16"

     5.HTTP_RAW_POST_DATA移除了(可以使用php://input替代)

     6.静态函数里面不再支持通过一个不兼容的$this调用一个非静态的函数了

        $o = & new className{} ,不再支持这样的写法

     7.php.ini文件移除了#作为注释,统一用;去注释

新特性

  • ZEND引擎升级到Zend Engine 3,也就是所谓的PHP NG
  • 增加抽象语法树,使编译更加科学
  • 64位的INT支持
  • 统一的变量语法
  • 原声的TLS - 对扩展开发有意义
  • 一致性foreach循环的改进
  • 新增 <=>、**、?? 、\u{xxxx}操作符
  • 增加了返回类型的声明
  • 增加了标量类型的声明
  • 核心错误可以通过异常捕获了
  • 增加了上下文敏感的词法分析

说了这么多的废话,进入主题吧。

升级步骤如下:

1、升级php(在终端下执行)

curl -s http://php-osx.liip.ch/install.sh | bash -s 7.1

在终端下直到出现”Syntax OK”就说明安装成功了。这个时候,用phpinfo()函数,你可以看到PHP Version 7.1.0alpha2

2、解决mysql链接的问题,由于php7抛弃了mysql的扩展函数(mysql_*),所有的链接mysql都要使用pdo,而php7的pdo_mysql.default_socket默认路径是/tmp/mysql.sock,而mysql.sock的路径在/private/var/mysql/mysql.sock,所以需要做一个软连接到tmp文件夹,在终端下执行

cd /tmp
sudo ln -s /private/var/mysql/mysql.sock mysql.sock

如果解决以上错误,php链接数据库时会提示:SQLSTATE[HY000] [2002] No such file or directory

3、重启apache和mysql,这样就可以啦!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
php 结果集的分页实现代码
Mar 10 PHP
PHP URL地址获取函数代码(端口等) 推荐
May 15 PHP
php中使用parse_url()对网址进行解析的实现代码(parse_url详解)
Jan 03 PHP
体育彩票排列三组选三算法分享
Mar 07 PHP
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
May 04 PHP
PHP两种去掉数组重复值的方法比较
Jun 19 PHP
图文详解PHP环境搭建教程
Jul 16 PHP
基于thinkPHP类的插入数据库操作功能示例
Jan 06 PHP
php实现页面纯静态的实例代码
Jun 21 PHP
PHP实现用户登录的案例代码
May 10 PHP
windows 2008r2+php5.6.28环境搭建详细过程
Jun 18 PHP
laravel-admin 实现给grid的列添加行数序号的方法
Oct 08 PHP
PHP中时间加减函数strtotime用法分析
Apr 26 #PHP
yii2中dropDownList实现二级和三级联动写法
Apr 26 #PHP
MAC下通过改apache配置文件切换php多版本的方法
Apr 26 #PHP
PHP编程计算日期间隔天数的方法
Apr 26 #PHP
浅谈PHP中类和对象的相关函数
Apr 26 #PHP
详解PHP防止盗链防止迅雷下载的方法
Apr 26 #PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
Apr 26 #PHP
You might like
php解决和避免form表单重复提交的几种方法
2016/08/31 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
PHP 断点续传实例详解
2017/11/11 PHP
表单内同名元素的控制
2006/11/22 Javascript
javascript mouseover、mouseout停止事件冒泡的解决方案
2009/04/07 Javascript
js获取图片大小的函数代码
2011/09/20 Javascript
Node.js 8 中的 util.promisify的详解
2017/06/12 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
取消Bootstrap的dropdown-menu点击默认关闭事件方法
2018/08/10 Javascript
js实现图片局部放大效果详解
2019/03/18 Javascript
javascript实现的时间格式加8小时功能示例
2019/06/13 Javascript
小程序实现投票进度条
2019/11/20 Javascript
基于js实现逐步显示文字输出代码实例
2020/04/02 Javascript
[48:45]Ti4 循环赛第二日 NEWBEE vs EG
2014/07/11 DOTA
[45:52]2018DOTA2亚洲邀请赛 4.1小组赛 A组加赛 LGD vs Liquid
2018/04/02 DOTA
python函数返回多个值的示例方法
2013/12/04 Python
Python封装shell命令实例分析
2015/05/05 Python
使用Python脚本将文字转换为图片的实例分享
2015/08/29 Python
Python使用sorted排序的方法小结
2017/07/28 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
django rest framework 数据的查找、过滤、排序的示例
2018/06/25 Python
Python3.5基础之NumPy模块的使用图文与实例详解
2019/04/24 Python
Python3中FuzzyWuzzy库实例用法
2020/11/18 Python
精致的手工皮鞋:Shoe Embassy
2019/11/08 全球购物
几道数据库的面试题或笔试题
2014/05/31 面试题
采购部岗位职责
2013/11/24 职场文书
开业典礼主持词
2014/03/21 职场文书
用人单位终止解除劳动合同证明书
2014/10/06 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
人事专员岗位职责
2015/02/03 职场文书
单位收入证明范本
2015/06/18 职场文书
小学语文的各类谚语(70首)
2019/08/15 职场文书
《天净沙·秋思》教学反思三篇
2019/11/02 职场文书
导游词之无锡梅园
2019/11/28 职场文书
浅谈MySQL next-key lock 加锁范围
2021/06/07 MySQL
Android超详细讲解组件ScrollView的使用
2022/03/31 Java/Android