2016-04-01 4 views
0

Ich weiß, es wurde schon viele Male früher gefragt, aber vertrauen Sie mir, ich forschte nach meinen genauen Anforderungen und konnte nicht die richtige Methode finden.php resultset zu array

Ich brauche das einfache Array von PHP Resultset von MySQL.

hier ist mein Code

$sql_qry_group = "SELECT country_code, Count(users) as userscnt FROM `users` GROUP by country_code "; 
$qry_users_group = mysqli_query($db_conn, $sql_qry_group); 
    while($users_country = mysqli_fetch_assoc($qry_users_group)) { 
     $countries[] = $nodes_country_set; 
    } 

wenn ich Länder tun print_r für $ [], I-Ausgang wie unten zu bekommen.

[1] => Array 
     (
      [country_code] => US 
      [userscnt] => 727 
     ) 

    [2] => Array 
     (
      [country_code] => UY 
      [userscnt] => 53 
     ) 

    [3] => Array 
     (
      [country_code] => VC 
      [userscnt] => 4 
     ) 

Was ich brauche, ist ein Array wie diese

$countries = array(
      "US" => 727, 
      "UY" => 53, 
      "VC" => 4, 
} 

sein Wie kann ich es beheben?

Vielen Dank im Voraus.

+1

'array_column ($ Länder" userscnt "," country_code ");' – Rizier123

Antwort

0

Sie können Ihre while-Schleife

$countries[$nodes_country_set['country_code']] = $nodes_country_set['userscnt']; 
0

Auch können Sie ändern Ihre Array wie folgt ändern:

$result = [];  
    array_walk($data,function($v,$k)use (&$result){ 
     $result[$v['country_code']] = $v['userscnt']; 
    });  
print_r($result); 

Ausgang:

Array 
(
    [US] => 727 
    [UY] => 53 
    [VC] => 4 
) 
+0

Dies funktionierte perfekt. Ich danke dir sehr –