Yii只选择指定的属性和JSON


Yii selecting only specified attributes and to JSON

我只想向客户端显示指定的属性,但json字符串包含而不是指定的属性。

$data=音乐::model()->findAllByPk($musics,阵列('select'=>'id,song',。。。));

但是json编码字符串是:

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

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

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

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

抱歉我的EN坏

您可以创建一个包含所需字段的listData,该listData(数组)编码为JSON:

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