gpt4 book ai didi

php - PHP fatal error PHP fatal error :在非对象上调用__clone方法

转载 作者:行者123 更新时间:2023-12-01 13:57:51 34 4
gpt4 key购买 nike

因此,我正在从事一个项目,但是由于不断收到错误和警告,所以我遇到了一个问题。我对PHP还是很陌生,所以要保持柔和。使用PHP 5.5可以正常运行该程序。但是,当我在PHP 5.6中运行该程序时,会收到如下错误:

[2016年10月10日10:04:46美国/丹佛] PHP警告:/ hermes / bosnaweb14a / b1234 /.../ application / vendor /中的“MMR \ Bundle \ CodeTyperBundle \ Entity \ User”反序列化错误的数据格式第833行上的doctrine / orm / lib / Doctrine / ORM / Mapping / ClassMetadataInfo.php
[2016年10月10日10:04:46美国/丹佛] PHP注意:unserialize():/hermes/bosnaweb14a/b1234/.../application/vendor/doctrine/orm/lib中偏移49的50个字节时出错/Doctrine/ORM/Mapping/ClassMetadataInfo.php行833
[2016年10月10日10:04:46美国/丹佛] PHP致命错误:/hermes/bosnaweb14a/b1234/.../application/vendor/doctrine/orm/lib/Doctrine/中的非对象上调用了__clone方法837行上的ORM / Mapping / ClassMetadataInfo.php

项目信息

平台:Symfony
PHP版本:5.6

受影响的代码

public function newInstance()
{
if ($this->_prototype === null) {
if (PHP_VERSION_ID === 50429 || PHP_VERSION_ID === 50513) {
$this->_prototype = $this->reflClass->newInstanceWithoutConstructor();
} else {
$this->_prototype = unserialize(sprintf('O:%d:"%s":0:{}', strlen($this->name), $this->name)); //Line 833
}
}

return clone $this->_prototype; //Line 837
}

任何帮助将不胜感激

最佳答案

我测试了:
var_dump(clone $t=unserialize(sprintf('O:%d:"%s":0:{}', strlen('name'), 'name')));
而且有效。

您必须检查$this->name的值,可能是空值或包含非法字符。

首先在哪里设置$this->name

关于php - PHP fatal error PHP fatal error :在非对象上调用__clone方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39981499/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com