用mysql从PHP创建数组

时间:2017-07-26 22:10:43

标签: php mysql mysqli

我认为我可能会在没有睡眠的情况下过度尝试,但是我在使用mysql查询创建数组时遇到了问题。我有这样的查询:

$result = mysqli_query($con,"SELECT * FROM vehicles ORDER BY id");
while($row = mysqli_fetch_array($result)) {
    $description = $row['description'];
    $description = strtoupper($description);
    $id = $row['id'];
}

我希望它能像这样创建一个数组:

$v[1] = "Myarray1";

我试过这个,但它不起作用:

$v[ $row['id']] = $row;

我必须这样查询:

while( $row = mysql_fetch_assoc( $result)){}

如果我这样做,我如何根据需要创建数组?

非常感谢提前

2 个答案:

答案 0 :(得分:1)

在这里,你决不是在创建一个数组。在你的循环中,你只是修改一些变量,这些变量在你发布的上下文中我无法推理。

如果你需要的话,不会做任何数据过滤:

sellButton.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
      Item item = myItemSet.get(position);
      myListener.handleClick(item);
   }
});

[]在PHP中基本上“附加”,这是一个丑陋的机制,但它有效。

如果您想要访问每个主键的行数(我认为是$list = Array(); while( $row = mysqli_fetch_array($result) ) { $list[] = $row; } ),那么只需将id替换为[]

答案 1 :(得分:-1)

我不确定您正在寻找的最终结果。但是,如果您想以$ row ['列']的形式访问结果,其中'列'是MySQL数据库中的列名,那么您需要使用mysql_fetch_assoc。我认为这个例子会有所帮助:

while (($row = mysqli_fetch_assoc($result))) {
   $v[$row['id']] = $row;
}

$ v [1] ['说明'] 是ID = 1的记录的列描述中的数据