微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Laravel收到错误消息“试图访问类型为int的值的数组偏移量”,同时调用aritsan命令Artisan :: call'cache:clear';

如何解决Laravel收到错误消息“试图访问类型为int的值的数组偏移量”,同时调用aritsan命令Artisan :: call'cache:clear';

我正在尝试使用代码清除缓存。它引发了一个错误Trying to access array offset on value of type int

Route::get('/clear-cache',function() {
    Artisan::call('cache:clear');
    return "Cache is cleared";
});

elseif ('-' === $key[0])行中的错误

protected function parse()
{
    foreach ($this->parameters as $key => $value) {
        if ('--' === $key) {
            return;
        }
        if (0 === strpos($key,'--')) {
            $this->addLongOption(substr($key,2),$value);
        } elseif ('-' === $key[0]) {
            $this->addShortOption(substr($key,1),$value);
        } else {
            $this->addArgument($key,$value);
        }
    }
}

解决方法

键变量现在可能不是数组。您可以显式地将其转换为数组

protected function parse()
{
    foreach ($this->parameters as $key => $value) {
        $key = (array)$key;
        if ('--' === $key) {
            return;
        }
        if (0 === strpos($key,'--')) {
            $this->addLongOption(substr($key,2),$value);
        } elseif ('-' === $key[0]) {
            $this->addShortOption(substr($key,1),$value);
        } else {
            $this->addArgument($key,$value);
        }
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。