我正在尝试将mysql查询结果放入字符串中 我试图找到答案,但所有类似的帖子都得到子查询答案,这不是我想要做的。
例如
+----------------------------------+
| Fruits_tbl |
+----+---------+---------+---------+
| ID | Fruit | Color | Number |
+----+---------+---------+---------+
| 1 | Orange | Orange | 3 |
| 2 | Apple | Red | 5 |
+----+---------+---------+---------+
$sql = "select Fruits,Color,Number from Fruits_tbl where ID = 2";
$result = $pdo->query($sql);
$row = $result->fetch();
print_r($row);
这会给我一些像 数组([0] =>“Apple”,[1] =>“红色”,[2] =>“5”,[水果] =>“Apple”,[颜色] =>“红色“,[Number] =>”5“)
implode会给我2个
我只想要一个字符串=“Apple,Red,5”
我目前拥有的是
$string = $row['Fruit'].", ".$row['Color'].", ".$row['Number']
正如你所看到的那样相当乏味。
有什么像implode但只返回索引数组或什么?
答案 0 :(得分:2)
您可以修改fetch以获取关联数组:
$row = $result->fetch(PDO::FETCH_ASSOC);
或者,你可以得到一个清单:
$row = $result->fetch(PDO::FETCH_NUM);
其中任何一个都可能被单个值破坏,并且不会包含array_unique()的开销。
答案 1 :(得分:1)
$row[Fruit].", ".$row[Color]
必须为$row['Fruit'].", ".$row['Color']
我误解了你要做的事情。
使用array_unique()
并将其内爆。
$string = rtrim(implode(',', array_unique($your_array)),',');