Je récupère post_id de postmeta comme:
$post_id = $wpdb->get_results("SELECT post_id FROM $wpdb->postmeta WHERE (meta_key = 'mfn-post-link1' AND meta_value = '". $from ."')");
quand j'essaye, print_r($post_id);
j'ai un tableau comme celui-ci:
Array
(
[0] => stdClass Object
(
[post_id] => 140
)
[1] => stdClass Object
(
[post_id] => 141
)
[2] => stdClass Object
(
[post_id] => 142
)
)
et je ne sais pas comment le traverser, et comment pourrais-je obtenir un tableau comme celui-ci
Array
(
[0] => 140
[1] => 141
[2] => 142
)
Une idée comment puis-je faire cela?
Réponses:
Le moyen le plus simple consiste à encoder votre objet en JSON, puis à le décoder en un tableau:
Ou si vous préférez, vous pouvez également parcourir l'objet manuellement:
la source
$array = json_decode($object,true)
?json_decode(json_encode($object), True)
un tableau différent de celui de la boucle foreach. La boucle foreach renvoie le tableau au format OP demandé.Très simple, transformez d'abord votre objet en objet json, cela retournera une chaîne de votre objet en un représentant JSON.
Prenez ce résultat et décodez avec un paramètre supplémentaire de true, où il se convertira en tableau associatif
la source
Essaye ça:
la source
Vous pouvez convertir un objet std en tableau comme ceci:
la source
Pour les tableaux unidimensionnels:
Pour un tableau multidimensionnel:
la source
ARRAY_A est un argument "output_type". Il peut s'agir de l'une des quatre constantes prédéfinies (par défaut OBJECT):
Voir: http://codex.wordpress.org/Class_Reference/wpdb
la source
Lors de la conversion d'un objet de classe STD en tableau, convertissez l'objet en tableau en utilisant la fonction de tableau de php.
Essayez avec l'extrait de code suivant.
la source
Vous pouvez essayer ceci:
la source
Utiliser ArrayObject de Std ou créer le vôtre
vous pouvez utiliser la méthode intégrée sur la nouvelle classe:
ou passez le nouvel objet à
la source
$existingStdClass
a une propriété qui en est une autre,stdClass
cette propriété reste une stdClass dans le tableau résultant. Si vous avez besoin de quelque chose qui fonctionne récursivement, il semble que vous deviez utiliser les techniques jsonSupposons que $ post_id est un tableau de $ item
texte fort
la source
si vous avez un tableau et que l'élément du tableau est un élément,
stdClass
voici la solution:maintenant le
stdClass
a été remplacé par un tableau à l'intérieur du tableau en tant que nouvel élément du tableaula source
Il existe deux façons simples de convertir un objet stdClass en un tableau
et l'autre est
ou vous pouvez simplement créer un tableau en utilisant la boucle foreach
la source
J'ai une fonction
myOrderId($_GET['ID']);
qui renvoie un OBJ multidimensionnel. comme une chaîne .Aucun des autres 1 doublure ne s'est réveillé pour moi.
Cela a tous deux fonctionné:
la source