php - 获取MySql数据并放入多维数组中

标签 php mysql multidimensional-array

可以是 PHP 或 Mysql 解决方案... 我希望能够将从 mysql 数据库中选择的一些数据存储在 php 数组中。到目前为止,我只能放入“假”数组

$SQL = "SELECT *  FROM continents RIGTH JOIN Country ON Country_Continents = continents_ID";
       while ($CONT = mysql_fetch_array($DataSet)){
            $array_cont[] = $CONT["continents_name"];
            $country_ID_rry [] = $CONT;
         }

然后我得到每个大陆的数组,大陆数组得到国家名称..

Array
(
    [0] => Array
        (
            [0] => America
            [continents_name] => America
            [1] => 3
            [country_id] => 3
            [2] => México
            [country_name] => México
        )

    [1] => Array
        (
            [0] => SouthAmérica
            [continents_name] => SouthAmerica
            [1] => 2
            [country_id] => 2
            [2] => Argentina
            [country_name] => Argentina
        )

    [2] => Array
        (
            [0] => SotuhAmerica
            [continents_name] => SouthAmerica
            [1] => 5
            [country_id] => 5
            [2] => Venezuela
            [country_name] => Venezuela
        )

    [3] => Array
        (
            [0] => SouthAmerica
            [continents_name] => SouthAmerica
            [1] => 6
            [country_id] => 6
            [2] => Colombia
            [country_name] => Colombia
        )

    [4] => Array
        (
            [0] => Caribe
            [continents_name] => Caribe
            [1] => 1
            [country_id] => 1
            [2] => Cuba
            [country_name] => Cuba
        )

)

但我想要类似的东西......

Array
(
    [SouthAmerica] => Array
        (
            [0] => Argentina
            [1] => Brazil
            [2] => Colombia
        )

    [NorthAmerica] => Array
        (
            [0] => Usa
            [1] => Mexico
            [2] => Canada
        )

    [Europa] => Array
        (
            [0] => Ukraine
            [1] => Germany
            [2] => England
        )

)

最佳答案

警告此扩展在 PHP 5.5.0 中已弃用,并在 PHP 7.0.0 中被删除。相反,MySQLiPDO_MySQL应使用扩展名。另请参阅MySQL: choosing an API guiderelated FAQ了解更多信息。此功能的替代方案包括:

  • mysqli_fetch_array()
  • PDOStatement::fetch()

但是总体思路(仅获取关联数组):

while ($CONT = mysql_fetch_assoc($DataSet)){
    $Pais_ID_rry[$CONT["continents_name"]][] = $CONT['country_name'];
}

此外,如果您只想要大陆国家名称:

SELECT continents_name, country_name FROM continents . . .

关于php - 获取MySql数据并放入多维数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40472539/

相关文章:

PHP/MySQL - 构建导航菜单层次结构

python-3.x - 如何对数组列表中的所有数组求和?

c# - 你如何遍历多维数组?

c++ - 打印动态二维数组,C++

php - 在 codeigniter 中显示来自两个表的数组数据

php - 如何获取所有我选择的数据并用 while 循环回显它?只获取一条记录

javascript - 如何从 javascript 调用 Controller 函数

PHP 和 mySQL 从数据库上传 pdf 图像

php - MySQL 基于组内条件的记录计数

java - 我想编写代码来用Java更新mysql数据。这是我的代码。它给出这样的错误 :