Maison > cadre php > YII > Comment convertir des objets yii en tableaux ou directement au format json

Comment convertir des objets yii en tableaux ou directement au format json

王林
Libérer: 2022-10-08 17:08:27
avant
3553 Les gens l'ont consulté

Comment convertir des objets yii en tableaux ou directement au format json

Comment le convertir en tableau ?

(Partage de vidéos d'apprentissage : Vidéo de programmation)

Lorsque nous utilisons l'enregistrement actif de Yii pour obtenir les résultats de la requête, l'ensemble de résultats renvoyé est un type d'objet. Si nous voulons traiter les données plus facilement, nous pouvons les convertir en tableau et les renvoyer, comme la méthode suivante :

// 查找满足指定条件的结果中的第一行
$post=Post::model()->find($condition,$params);
// 查找具有指定主键值的那一行
$post=Post::model()->findByPk($postID,$condition,$params);
// 查找具有指定属性值的行
$post=Post::model()->findByAttributes($attributes,$condition,$params);
Copier après la connexion

Lorsque vous renvoyez un résultat, utilisez simplement $post->attributes;.

Et si vous souhaitez renvoyer le tableau FindAll ?

Il existe deux méthodes :

La première consiste à utiliser une fonction personnalisée, comme suit

/**
 * 简化findall数据
 * */
function simplifyData($data){
	foreach($data as $key=>$val){
		$newData[$key] = $val->attributes;
	}
	return $newData;
}
Copier après la connexion

Utilisez ensuite la fonction pour convertir directement le résultat

La seconde C'est une méthode très simple :

$products = ProTuan::model()->findAll($criteria);
$products = json_decode(CJSON::encode($products),TRUE);
Copier après la connexion

La fonction est d'abord de convertir le résultat findAll au format JSON, puis de le convertir en tableau

Quant à la conversion de findALL au format JOSN, vous utilisez réellement

CJSON::encode
Copier après la connexion

Recommandations associées : yii framework

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal