如何在yii中解码json 1

时间:2016-11-02 09:11:23

标签: php yii yii1.x

我的控制器中有以下代码:

public function actionCabinet($id){

    $this->render('cabinet', array('model'=>$this->loadJson($id)) );

}

    public function loadJson($id)
    {

        $jsonfile=ChForms::model()->findByPk($id, array("select"=>"json"));
        $decodedJson=json_decode($jsonfile, true);
        return $decodedJson;

    }

数据以json格式保存在ChForm的json字段中。我要将它转换为数组。当我运行此应用程序时,它显示以下错误消息:

json_decode() expects parameter 1 to be string, object given

如何解决此错误?

2 个答案:

答案 0 :(得分:1)

请试试这个,

 public function loadJson($id)
{

    $jsonfile=ChForms::model()->findByPk($id);
    $decodedJson=json_decode($jsonfile->json, true);
    return $decodedJson;

}

答案 1 :(得分:0)

您可以使用如下所示的json_encode,

public function loadJson($id)
{

    $jsonfile=ChForms::model()->findByPk($id, array("select"=>"json"));
    $decodedJson=json_encode($jsonfile, true);
    return $decodedJson;

}