首页 > 解决方案 > PHP Laravel Homestead - 应该抛出错误时出现分段错误(核心转储)

问题描述

我已经为这个问题搜索了很多并得出一个结论(我不是 100% 确定它是正确的):“分段错误”错误是由 PHP 引起的(不是您项目上的包或其他东西?) .

当我发现一些东西时,我删除了很多我原来的问题:

php artisan make:migration example

方法内容up()

dump('up()');
$thisShouldThrowAMethodNotExistError = User::whereSomething('nonExisting')->first();
dd('This is the end');

然后,执行迁移的正常方法:

php artisan migrate
"up()"
Segmentation fault (core dumped)

基本上我发现每当 PHP 抛出错误时(比如在这种情况下,该方法whereSomething不存在),Segmentation fault就会显示 。

我不知道在哪里可以解决这个问题。当前版本:

运行命令php7.1 artisan migrate对我来说没有任何改变。

编辑

删除 PHP 7.3.* 和 7.2.* 后,我仍然不会像往常一样收到错误:

vagrant@homestead:~/Code/project$ php -v
PHP 7.1.20-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Jul 25 2018 10:07:09) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.20-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
    with blackfire v1.22.0~linux-x64-non_zts71, https://blackfire.io, by Blackfire
vagrant@homestead:~/Code/project$ php artisan migrate
 "up()"
Segmentation fault (core dumped)

标签: phplaravelsegmentation-faultvirtualboxhomestead

解决方案


不知何故,它在我们的开发分支发生更改后得到了修复。这些更改只是一些与 PHP、配置、Laravel 无关的文件,只是一些小的代码更改。

我目前的理论是某些文件已损坏或其他什么,当我再次拉出开发分支时已解决。

如果有人有不同的理论,请告诉我,因为我觉得这一切都很奇怪...... :)


推荐阅读