Store array in while loop to use outside

后端 未结 4 462
星月不相逢
星月不相逢 2021-01-21 15:28

I would like to store value from while loop but not in multidimensional way :

 $movies_id = array();

 while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
          


        
4条回答
  •  佛祖请我去吃肉
    2021-01-21 16:14

    You need to set value properly.

                $movies_id = array();
    
                while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                    $id = $row['id'];
                    $title_id = $row['title_id'];
                        $movies_id[$id] = $title_id; // The proper way
                        //$movies_id[] = [$id => $title_id];
                }
    
                print_r($movies_id);
    

    The more readable code would be:

                $movies_id = array();
    
                while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                        $movies_id[$row['id']] = $row['title_id'];
                }
                print_r($movies_id);
    

    And would result in

    array (
        1 => 'Title 1',
        2 => 'Title 2',
        4 => 'Title 4',
        8 => 'Title 8',
    )
    

    And key-less soulution would be:

                $movies_id = array();
    
                while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                        $movies_id[] = $row['title_id'];
                }
                print_r($movies_id);
    

    And would result in

    array (
        0 => 'Title 1',
        1 => 'Title 2',
        2 => 'Title 4',
        3 => 'Title 8',
    )
    

提交回复
热议问题