$ php app/console fos:user:create
Please choose a username:admin
Please choose an email:admin21@dwq
Please choose a password:admin123
Created user admin $ php app/console fos:user:promote
Please choose a username:admin
Please choose a role:ROLE_SUPER_ADMIN
PHP Warning: Erroneous data format for unserializing 'Workshop\Bundle\BackendBundle\Entity\User' in E:\_My_File_____\_work\MyCode\myCode\phpworkspace
\symfony-workshop\vendor\doctrine\orm\lib\Doctrine\ORM\Mapping\ClassMetadataInfo.php on line
PHP Notice: unserialize(): Error at offset of bytes in E:\_My_File_____\_work\MyCode\myCode\phpworkspace\symfony-workshop\ve
ndor\doctrine\orm\lib\Doctrine\ORM\Mapping\ClassMetadataInfo.php on line
PHP Fatal error: Uncaught Error: __clone method called on non-object in E:\_My_File_____\_work\MyCode\myCode\phpworkspace\symfony-
workshop\vendor\doctrine\orm\lib\Doctrine\ORM\Mapping\ClassMetadataInfo.php:
Stack trace:
# E:\_My_File_____\_work\MyCode\myCode\phpworkspace\symfony-workshop\vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php(): Do
ctrine\ORM\Mapping\ClassMetadataInfo->newInstance()
# E:\_My_File_____\_work\MyCode\myCode\phpworkspace\symfony-workshop\vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php(): Do
ctrine\ORM\UnitOfWork->newInstance(Object(Doctrine\ORM\Mapping\ClassMetadata))
# E:\_My_File_____\_work\MyCode\myCode\phpworkspace\symfony-workshop\vendor\doctrine\orm\lib\Doctrine\ORM\Internal\Hydration\Simpl
eObjectHydrator.php(): Doctrine\ORM\UnitOfWork->createEntity('Workshop\\Bundle...', Array, Array)
# E:\_My_File_____\_work\MyCode\myCode\phpworkspace\symfony-workshop\vendor\doctrine\orm\lib\Doct in E:\_My_File_____\_work\MyCode
\myCode\phpworkspace\symfony-workshop\vendor\doctrine\orm\lib\Doctrine\ORM\Mapping\ClassMetadataInfo.php on line

为什么会出现这个错误呢

原因就是你本机器上的php版本与你的doctrine Bundle版本有些问题;

找到你报错的行数

ve ndor\doctrine\orm\lib\Doctrine\ORM\Mapping\ClassMetadataInfo.php on line

那么如果你和我的代码一样是这段

    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));
}
} return clone $this->_prototype;
}

那么直接替换:

    public function newInstance()
{
// echo PHP_VERSION_ID; die(); // Uncomment this, in case you don't know your PHP_VERSION_ID
if ($this->_prototype === null) {
if (PHP_VERSION_ID === 50429 || PHP_VERSION_ID === 50609||PHP_VERSION_ID === 50629||PHP_VERSION_ID === 50513 || PHP_VERSION_ID === 50603 || PHP_VERSION_ID === 70009) { // This is the tricky line
$this->_prototype = $this->reflClass->newInstanceWithoutConstructor();
} else {
$this->_prototype = unserialize(sprintf('O:%d:"%s":0:{}', strlen($this->name), $this->name));
}
} return clone $this->_prototype;
}

其中PHP_VERSION_ID === 50429就是php版本号;

50429就是5.4.29,我的事5.6.29那么就是50629

如果有兴趣一起讨论php_Symfony的话还可以加群一起学习:

QQ群:182983780

参考以下是博客问题解决

http://stackoverflow.com/questions/24031048/fos-userbundle-unable-to-login

http://stackoverflow.com/questions/24596813/symfony2-contexterrorexception-on-production-server-erroneous-data-format-for

https://github.com/symfony/symfony/issues/11056

随机推荐

  1. PHP使用mysqli连接MySQL数据库

    使用mysqli函数库连接MySQL,支持面向对象和面向过程两种方式: 1.面向对象的使用方式 建立一个连接 $db = new mysqli('localhost', 'root', '123456 ...

  2. android中非堵塞socket通信

    1.什么是同步与异步,堵塞与非堵塞 首先我们要明确搞明确:同步就等于堵塞?异步就等于非堵塞?这是不正确的,同步不等于阻 塞.而异步也不等于非堵塞. 1)那什么是同步编程? 什么是同步,就是在发出一个功 ...

  3. 累加按钮,自加1&&输入两个数字,比较大小

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. OSQL.EXE 命令行下脱裤mssql

    cd C:\Program Files\Microsoft SQL Server\100\Tools\Binn\ OSQL.EXE -S "localhost" -U " ...

  5. ddmrp

    DDMRP 特点 在供应链加入 mts 缓冲,解耦 lead time, 缩小 bullwhip 效应,最小化库存 buffer动态调整 buffer 分3个颜色共 4个区域[zone],为 gree ...

  6. 基于RxJava2+Retrofit2精心打造的Android基础框架

    代码地址如下:http://www.demodashi.com/demo/12132.html XSnow 基于RxJava2+Retrofit2精心打造的Android基础框架,包含网络.上传.下载 ...

  7. RabbitMQ功能测试+性能测试简单方法

    一.如何测试RabbitMQ的功能 1.联系开发找到队列的名称:登录MQ后台管理地址;点击Queues页,输入队列名搜索出目标队列(支持模糊查询) 2.准备测试数据 (1)已知json格式时,根据不同 ...

  8. JAVA静态导入(inport static)详解

    在Java 5中,import语句得到了增强,以便提供甚至更加强大的减少击键次数功能,虽然一些人争议说这是以可读性为代价的.这种新的特性成为静态导入. 当你想使用static成员时,可以使用静态导入( ...

  9. 使用ALAssetsLibrary读取所有照片

    一. ALAssetsLibrary 介绍 ALAssetsLibrary 提供了访问iOS设备下”照片”应用下所有照片和视频的接口: 从 ALAssetsLibrary 中可读取所有的相册数据,即  ...

  10. 网络数据传输socket和http优缺点

    数据传输方式 Socket传输的定义 所谓socket通常也称作"套接字",实现服务器和客户端之间的物理连接,并进行数据传输,主要有UDP和TCP两个协议.Socket处于网络协议 ...