将数组存储在while循环中以在外部使用 [英] Store array in while loop to use outside

查看:80
本文介绍了将数组存储在while循环中以在外部使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从while循环中存储值,但不能以多维方式存储:

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)) {
                $id = $row['id'];
                $title_id = $row['title_id'];
                    $movies_id[] = [$id => $title_id];
     }

print_r($movies_id);

如果我只是写$movies_id = [$id => $title_id];,它就不会显示方法,该方法只显示最后一个值.

I am not getting the way, how to do it, if i just write $movies_id = [$id => $title_id]; it only shows the last value.

先谢谢您.

推荐答案

您需要正确设置值.

            $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);

会导致

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

无键解决方案将是:

            $movies_id = array();

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

会导致

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

这篇关于将数组存储在while循环中以在外部使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆