$ 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. JAVA_Exception starting filter struts2怎么办

    1 请确保你的项目里面有这两个文件,没有则导入   2 如果还不行,并且你设置了Struts的开发模式,并且你的Tomcat的路径有空格,大部分情况是Program File的原因,此时你需要重新安装 ...

  2. vsftpd 配置:chroot_local_user与chroot_list_enable userlist_enable userlist_deny详解

    默认情况下,如果设置了 userlist_enable=YES,当 userlist_deny 选项设置为 YES 的时候,userlist_file=/etc/vsftpd.userlist 中列出 ...

  3. Location配置与ReWrite语法

    1 Location语法规则 1.1 Location规则 语法规则: location [=|~|~*|^~] /uri/ {… } 首先匹配 =,其次匹配^~,其次是按文件中顺序的正则匹配,最后是 ...

  4. 已经入了vim的坑

    一.移动光标 1.左移h.右移l.下移j.上移k 2.向下翻页ctrl + f,向上翻页ctrl + b 3.向下翻半页ctrl + d,向上翻半页ctrl + u 4.移动到行尾$,移动到行首0(数 ...

  5. Django与SQL语言中——NULL与空字符串的区别

    SQL有指定空值的独特方式,它把空值叫做NULL. Null在数据库中表示 不知道的数据,主要有3种意思: 1)知道数据存在,但不知道具体值. 2)不知道数据是否存在. 3)数据不存在. 在SQL中, ...

  6. react-native 项目实战 -- 新闻客户端(1) -- 初始化项目结构

    1.在项目根目录新建Componet文件夹(专门用来放我们的自定义组件),里面新建Main.js.Home.js.Message.js.Mine.js.Find.js 2.修改 index.andro ...

  7. STL学习笔记(变序性算法)

    变序性算法改变元素的次序,但不改变元素值. 这些算法不能用于关联式容器,因为在关联式容器中,元素有一定的次序,不能随意变动. 逆转元素次序 void reverse(BidirectionalIter ...

  8. 【DB2】新建用户

    1.创建用户(切换到root用户下操作) useradd -g users -d /home/qinys -s /bin/bash -m qinys 2.修改密码 passwd qinys 备注:此处 ...

  9. 删除数据库时提示数据库正在被使用,无法删除(Cannot drop database databasename because it is currently in use)的问题

    删除数据库时提示数据库正在被使用,无法删除(Cannot drop database databasename because it is currently in use)的问题   删除数据库时提 ...

  10. UINavigationController改变动画效果

    @interface UINavigationController (CustomTransition) - (void) pushWithCustomAnimation:(UIViewControl ...