JMSSerializerBundle如何序列化数据,在非对象上调用成员函数get()

时间:2013-01-24 09:42:42

标签: symfony jmsserializerbundle

我尝试使用JMSSerializerBundle我更新了我的作曲家,在我的AppKernel中添加了bundle。 我写了这个

namespace Surgery\PatientBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;


class VisitsController extends Controller{

    public function testAction()
    {       
        $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
        $serializer = $container->get('jms_serializer');
        $serializer->serialize($arr, 'json');

我得到了这个

Call to a member function get() on a non-object

知道我做错了什么或者我没有?

2 个答案:

答案 0 :(得分:2)

$ container未初始化。它是空的。你需要从

获取容器
$this->container->get('jms_serializer');

答案 1 :(得分:1)

你必须改变这个:

$serializer = $container->get('jms_serializer');

到此:

$serializer = $this->get('jms_serializer');