foreach( $wpdb->get_results("SELECT * FROM your_table_name WHERE id LIKE' . $id . ';")as $key => $row){// each column in your row will be accessible like this
$my_column = $row->column_name;}
Sin embargo, no estoy seguro si esta es la forma correcta. Creo que uno debe obtener el resultado en una variable y usar foreach en eso, para estar seguro. Por ejemplo, $ results = $ wpdb-> get_results ($ sql); y luego use foreach ($ resultados como $ valor).
Gogol
No debería importar realmente en este caso, ya que devuelve una matriz, un objeto o un valor nulo, no debería haber ningún riesgo de obtener un recurso "hostil al bucle". Dicho esto, es posible que desee volver a recorrerlos para otra cosa, y si es así, definitivamente almacénelos. no
Básicamente, dada la sintaxis predeterminada, la variable $ row aquí es un objeto que contiene sus resultados. Alternativamente, puede especificar el TIPO de resultado (matriz numérica, matriz asociativa).
Suponiendo solo un resultado, $ row-> id y $ row-> name deberían proporcionarle la información.
Si obtiene más de un resultado, desearía recorrer las entradas del objeto.
$obj=[];
$rows = $wpdb->get_results('SELECT * FROM `tbl_name` WHERE `id` = '.$obj_id , ARRAY_A);foreach($rows as $row){ $obj=$row;break;}// $obj is now the selected row if a match was found
Para obtener otros formatos, simplemente cambie ARRAY_Asegún la documentación de$wpdb->get_results() . La respuesta de Pippin es apropiada para la mayoría del uso de objetos.
Para usar una fila como una matriz indexada numéricamente
$rows = $wpdb->get_results('SELECT * FROM `tbl_name` WHERE `id` = '.$obj_id , ARRAY_N);foreach($rows as $row){ $obj=$row;break;}//Usageforeach($obj as $col_value) echo $col_value .' ';
Para usar una fila en una matriz cuyas claves son la clave principal de su base de datos (a menudo una idcolumna). Posiblemente más eficiente que el método de matriz asociativa.
$rows = $wpdb->get_results('SELECT * FROM `tbl_name` WHERE `id` = '.$obj_id , OBJECT_K);
$obj = $rows[ $obj_id ];//Usage
$something = $obj->column_name;//Remember you can loop over objects tooforeach($obj as $col => $val)
echo $col .': '. $val . PHP_EOL;
Pruebe siempre el Codex de WordPress: http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results
Básicamente, dada la sintaxis predeterminada, la variable $ row aquí es un objeto que contiene sus resultados. Alternativamente, puede especificar el TIPO de resultado (matriz numérica, matriz asociativa).
Suponiendo solo un resultado, $ row-> id y $ row-> name deberían proporcionarle la información.
Si obtiene más de un resultado, desearía recorrer las entradas del objeto.
Si espera solo una fila hacia atrás, intente usar $ wpdb-> get_row http://codex.wordpress.org/Class_Reference/wpdb#SELECT_a_Row
fuente
Para usar como una matriz asociativa:
Uso
Para obtener otros formatos, simplemente cambie
ARRAY_A
según la documentación de$wpdb->get_results()
. La respuesta de Pippin es apropiada para la mayoría del uso de objetos.Para usar una fila como una matriz indexada numéricamente
Para usar una fila en una matriz cuyas claves son la clave principal de su base de datos (a menudo una
id
columna). Posiblemente más eficiente que el método de matriz asociativa.fuente
Este código funciona perfecto para mí:
fuente