简体   繁体   English

如何在关联数组中从数据库插入结果

[英]How to insert results from database in associative array

I have a query which gets all policy ids from database.I want to put all results in associative array, to look like this : 我有一个查询,它从数据库中获取所有策略ID。我想将所有结果放在关联数组中,如下所示:

[0]=>Q-CID-14328097
[1]=>Q-CID-1507193624
[2]=>id3

This is my code : 这是我的代码:

global $wpdb;

$results = $wpdb->get_results($wpdb->prepare("SELECT id FROM wp_frm_items WHERE user_id=%d ORDER BY created_at DESC", 97));
$i = 0;

if ($results) {
    foreach($results as $row) {
        $policy_id = $wpdb->get_results($wpdb->prepare("SELECT meta_value FROM wp_frm_item_metas WHERE field_id=%d AND item_id=%s", 203, $row->id));
        $policy_transaction_type = $wpdb->get_results($wpdb->prepare("SELECT meta_value FROM wp_frm_item_metas WHERE field_id=%d AND item_id=%s", 390, $row->id));
        $policy_transaction_type = $policy_transaction_type[0]->meta_value;
        $policy_id = $policy_id[0]->meta_value;
        $array = array($policy_id);

}
}

But this returns : 但这返回:

Array ( [0] => Q-CID-14328097 ) Array ( [0] => ) Array ( [0] => Q-CID-14328097 ) Array ( [0] => ) Array ( [0] => Q-CID-14328097 ) Array ( [0] => Q-CID-1507193624 ) Array ( [0] => Q-CID-1510050174 ) Array ( [0] => Q-CID-1511814120 ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => ) Array ( [0] => )

You set $array each time. 您每次设置$ array。 You can set it once before the loop, then insert elements to it: 您可以在循环之前设置一次,然后在其中插入元素:

$array=array();    
foreach($results as $row) {
            $policy_id = $wpdb->get_results($wpdb->prepare("SELECT meta_value FROM wp_frm_item_metas WHERE field_id=%d AND item_id=%s", 203, $row->id));
            $policy_transaction_type = $wpdb->get_results($wpdb->prepare("SELECT meta_value FROM wp_frm_item_metas WHERE field_id=%d AND item_id=%s", 390, $row->id));
            $policy_transaction_type = $policy_transaction_type[0]->meta_value;
            $policy_id = $policy_id[0]->meta_value;
            $array[] =$policy_id;

    }

That's all 就这样

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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