Busco post_id de postmeta como:
$post_id = $wpdb->get_results("SELECT post_id FROM $wpdb->postmeta WHERE (meta_key = 'mfn-post-link1' AND meta_value = '". $from ."')");
cuando lo intento, print_r($post_id);
tengo una matriz como esta:
Array
(
[0] => stdClass Object
(
[post_id] => 140
)
[1] => stdClass Object
(
[post_id] => 141
)
[2] => stdClass Object
(
[post_id] => 142
)
)
y no sé cómo atravesarlo, y cómo podría obtener una matriz como esta
Array
(
[0] => 140
[1] => 141
[2] => 142
)
¿Alguna idea de cómo puedo hacer esto?
Respuestas:
La forma más fácil es codificar JSON su objeto y luego decodificarlo de nuevo en una matriz:
O si lo prefiere, también puede atravesar el objeto manualmente:
fuente
$array = json_decode($object,true)
?json_decode(json_encode($object), True)
devuelto una matriz diferente en comparación con el bucle foreach. El bucle foreach devuelve la matriz en el formato solicitado por OP.Muy simple, primero convierta su objeto en un objeto json, esto devolverá una cadena de su objeto en un representante JSON.
Tome ese resultado y decodifique con un parámetro adicional de verdadero, donde se convertirá en una matriz asociativa
fuente
Prueba esto:
fuente
Puede convertir un objeto estándar en una matriz como esta:
fuente
Para matrices unidimensionales:
Para matriz multidimensional:
fuente
ARRAY_A es un argumento "tipo_salida". Puede ser una de las cuatro constantes predefinidas (por defecto es OBJECT):
Ver: http://codex.wordpress.org/Class_Reference/wpdb
fuente
Al convertir un objeto de clase STD en una matriz, pegue el objeto a una matriz utilizando la función de matriz de php.
Pruébelo con el siguiente fragmento de código.
fuente
Puedes probar esto:
fuente
Usando ArrayObject de Std o construyendo uno propio
puedes usar el método build in en la nueva clase:
o pasar el nuevo objeto a
fuente
$existingStdClass
tiene una propiedad que es otrastdClass
, esa propiedad permanece como stdClass en la matriz resultante. Si necesita algo que funcione de forma recursiva, parece que necesita usar las técnicas jsonSupongamos que $ post_id es una matriz de $ item
texto fuerte
fuente
si tiene una matriz y el elemento de la matriz es un
stdClass
elemento, esta es la solución:ahora
stdClass
ha sido reemplazado con una matriz dentro de la matriz como nuevo elemento de matrizfuente
Hay dos formas sencillas de convertir un objeto stdClass en una matriz
y otro es
o simplemente puede crear una matriz usando foreach loop
fuente
Tengo una función
myOrderId($_GET['ID']);
que devuelve OBJ multidimensional. como una cadena .Ninguno de los otros 1 delineador funcionó para mí.
Esto ambos funcionó:
fuente