Yii只选择指定的属性和JSON

时间:2013-09-05 04:23:46

标签: php yii

我只希望向客户端显示指定的属性,但json字符串包含未指定的属性。

$ data = Music :: model() - > findAllByPk($ musics,     阵列(        'select'=>'id,song',     ...     ) );

但是json编码字符串是:

[{id: x, song:'xxx', uid: null, disabeld: null}, ...]

我不希望这些字段(uid,disabeld)显示给用户,它不安全。

我尝试使用这些但不起作用:

CJSON::encode();
FOREACH()... getAttributes();

抱歉我的EN不好

1 个答案:

答案 0 :(得分:0)

您可以使用所需的字段创建listData,并将此listData(数组)编码为JSON:

    $data = Music::model()->findAllByPk($musics, array( 'select'=>'id, song', ... ) );
    $musicList = CHtml::listData($data, 'id', 'song');

    CJSON::encode($musicList);