php - 获取数据库表中所有不同属性的 PHP-arraylist

标签 php mysql

我用 PHP 获取了数据库表的所有条目。现在我想要一个数组来表示特定列的每个不同属性;如果属性相同,则应该在同一个数组中。请看下面的示例以了解我的意思:

+----+-------------------+------+
| ID | ColA              | Colb |
+----+-------------------+------+
| 1  | Some Text         | 2    |
+----+-------------------+------+
| 2  | Text              | 4    |
+----+-------------------+------+
| 3  | Another Text      | 2    |
+----+-------------------+------+
| 4  | Just Text         | 4    |
+----+-------------------+------+
| 5  | Text Text         | 4    |
+----+-------------------+------+
| 6  | Another Text Text | 4    |
+----+-------------------+------+

在我正在寻找的机制之后,数组应该看起来像这样:

Array (2) {
  Array (2) {
     Array (ID => '1', ColA => 'Some Text', ColB => '2'),
     Array (ID => '3', ColA => 'Another Text', ColB => '2')
  },
  Array (4) {
     Array (ID => '2', ColA => 'Text', ColB => '4'),
     Array (ID => '4', ColA => 'Just Text', ColB => '4'),
     Array (ID => '5', ColA => 'Text Text', ColB => '4'),
     Array (ID => '6', ColA => 'Another Text Text', ColB => '4')
  }
}

我知道如何用 for 循环解决这个问题,但是有没有一种单行代码的方法? MySQL 还是 PHP 函数?

最佳答案

$con = mysql_connect("localhost", "root", "");

$db = mysql_select_db("expDB", $con);

$sel = mysql_query("从 ColB 的 exp 订单中选择 *");

$a = 数组();

while($row = mysql_fetch_assoc($sel)){

$a[$row['ColB']][] = $row;

}

print_r($a);

关于php - 获取数据库表中所有不同属性的 PHP-arraylist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23536272/

相关文章:

bash - 来自 bash 管道和 heredoc 的 php stdin

php - 如何从数组中提取特定值

mysql - MySQL 的矩阵操作

php - 使用php将mysql数据导出到ODF

javascript - 广告内的服务器端图库(php、js?、ajax)

javascript - 删除 "sizes"属性-wordpress

mysql - 根据间隔sql获取两个日期之间的所有日期

php - mysql & php - 如何计算多个日期范围的总经验年数?

php - 如何在 php 中安装 ffmpeg

java - 编码故障排除