简体   繁体   中英

Creating an associative array from Wordpress $wpdb->get_results

It's been a long day and for some reason this is totally eluding me...

My Wordpress database request looks like this:

$results = $wpdb->get_results($sql);

And the output looks like this

Array ( [0] => stdClass Object ([id] => 2 [organisation] => Company 2 ) 
        [1] => stdClass Object ([id] => 1 [organisation] => Company 1 ) 
)

I need to turn it into an array that looks like this:

Array ([1] => Company 1, [2] => Company 2)

This must be dead easy, but I just can't see it for some reason...Grateful for any pointers...

Why dont you just request as an array in the first place

$results = $wpdb->get_results($sql,ARRAY_A);

return will be an array. if its one level deeper than you want, you can just do

$myarray = $results[0]; 

and you have it.

update: per Chris Sprauge's comment: ARRAY_A is a WP constant which you have to give as it is. It is not an associative array parameter.

$array = array();
foreach ($results as $res){
    $array[] = $res->organisation;
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM