Laravel5.4 升级到 5.6

析构磷火
• 阅读 4379

本文只为记录升级过程
本文用的是Ubuntu16.04的系统,如果Windows只需要改一下PHPStudy或下载相关的PHP版本即可


1、确认和升级PHP版本

laravel5.6要求PHP版本为^7.1.3,而Laravel5.4只需要^5.6版本
之前我安装的是7.0的PHP所以需要升级

升级PHP
终端运行:

dpkg --get-selections | grep -v deinstall | grep php7.0


查看PHP安装了那些组件

Laravel5.4 升级到 5.6

然后按下面步骤依次运行升级
sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.1

sudo apt-get install php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm

sudo a2dismod php7.0
  
sudo a2enmod php7.1

sudo service apache2 restart

sudo update-alternatives --set php /usr/bin/php7.0
sudo update-alternatives --set phar /usr/bin/phar7.0
sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.0
sudo update-alternatives --set phpize /usr/bin/phpize7.0
sudo update-alternatives --set php-config /usr/bin/php-config7.0


1.1此处要提醒大家

PHP7.2有一个关于Count的问题
PHP7.2中这样写

<?php
echo count(null);

会报以下错误:

Warning: count(): Parameter must be an array or an object that implements Countable in 

但在PHP7.1以下
会返回0
所以这次就坑了自己最终又从PHP7.2降回7.1
原因是很多第三方包使用了Count但没有处理这个错误

2、修改Laravel的Composer.json

PHP的版本改为7.1.3或以上
phpunit改为6.0

删除所有php artisan optimize, 因为5.6后已经删除了这个命令

根目录终端运行:composer update

等待一段时间后更新完后

在终端输入: php artisan -V 查看Laravel版本

3、日志修改

5.45.6的日志是有区别的

所以需要在config下添加一个logging.php的配置文件,代码请复制里面
https://github.com/laravel/la...

然后在.env下添加LOG_CHANNEL=stack这样日志就不会报错了

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
4年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Wesley13 Wesley13
4年前
java中比较两个时间的差值
项目背景1.某篇文稿的发布时间是publishDate,例如:2020072118:00:41。2.现要求判断该篇文稿的发布时间是否在近30天之内。publicstaticlongdayDiff(DatecurrentDate,DatepublishDate){LongcurrentTimecurrentDat
Wesley13 Wesley13
4年前
PHP连接MySQL 8.0报错的解决办法
MySQL升级到8.0之后,PHP连接报错怎么解决?作为资深的MySQL票友,最近我总在给8.0吹水,我们知数堂的MySQL课程去年也早就升级到8.0版本了。我的VPS老早就想升级了,无奈PHP版本太低,担心升级后有问题,所以一直没去折腾。这两天稍微得空,就开始折腾升级MySQL版本。为了解锁最香新功能,我直接升级到了最新的MySQL8.0.1
Wesley13 Wesley13
4年前
ubuntu卸载php7并安装php5.6记录
      ubuntu16.04版本从默认源安装的php版本为7.x版本,我们都知道php7.0已经舍弃了很多旧版本的函数等内容,这对旧系统来说是致命的,那么,我们就有了安装旧版php的需求,而同一主机安装两个版本的php,如果不做配置会报错。那么,我们就需要:一、卸载php7.x;1)如果我们知道在安装php7的时候都安装了那些包及扩
Wesley13 Wesley13
4年前
VSCode配置FiraCode和更纱黑体字体
!(https://oscimg.oschina.net/oscnet/c7bb62d935ceb01d3b7fe176322e84ae00d.png)Fira Code下载到FiraCode字体的GitHub(https://www.oschina.net/action/GoToLink?urlhttps%
Wesley13 Wesley13
4年前
Ubuntu16.04配置Nginx和Php5.6(Php7.0)环境
由于研究需要,自己搭配个Php5.6和Nginx环境!由于Ubuntu16.04默认Php版本已经升到7.0,因此需要添加5.6版本库才能使用!安装PHP5.6sudoaddaptrepositoryppa:ondrej/phpsudoaptupdatesudoaptinstallph
Wesley13 Wesley13
4年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Stella981 Stella981
4年前
PHP7安装redis扩展
1、查看自己PHP的版本echophpinfo()查看自己的版本:VC是14,系统是64位的,所以一定要选对版本,因为这个版本我折腾了好久。2、根据自己的PHP版本、编译器的版本以及cpu我的是php是7.0、VC14、X64。附上我的下载链接redis、igbinary的链接:Redis:http://windows.php.n
析构磷火
析构磷火
Lv1
在天愿作比翼鸟,在地愿为连理枝。
文章
10
粉丝
0
获赞
0