首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FetchAll到数组

FetchAll到数组
EN

Stack Overflow用户
提问于 2015-01-27 18:41:41
回答 2查看 227关注 0票数 1

我试图从fetchAll中获取一个结果,并将一些数据放入一个数组中。

相关PHP:

代码语言:javascript
复制
  $catcodessql = "select distinct cat_code from mytable";
  $result2 = $dbh->query($catcodessql)->fetchAll(PDO::FETCH_ASSOC); 

这将返回如下内容:

代码语言:javascript
复制
array(4) {
 [0]=>
array(1) {
["cat_code"]=>
string(3) "edu"
 }
 [1]=>
 array(1) {
["cat_code"]=>
string(3) "inc"
}
[2]=>
array(1) {
["cat_code"]=>
string(3) "net"
 }
[3]=>
 array(1) {
["cat_code"]=>
string(3) "occ"
}

我想要的是所有这些字符串,以便稍后在PHP中动态地将这一行放在一起:

代码语言:javascript
复制
$allcategories = array ('edu', 'inc', 'net', 'occ' );

因此,我需要创建一个变量来替换这个部分:'edu', 'inc', 'net', 'occ'

我尝试过几个while函数,但显然它们不正确。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-27 19:12:15

如果只想检索唯一类别,则可以直接使用查询进行检索:

代码语言:javascript
复制
$stmt = $dbh->prepare("select GROUP_CONCAT( cat_code SEPARATOR ',') as cat_code from ( select distinct cat_code from mytable) as m"); 
$stmt->execute(); 
$row = $stmt->fetch();
$categories = explode(",",$row["cat_code"]);
var_dump($categories);
票数 1
EN

Stack Overflow用户

发布于 2015-01-27 18:43:09

PHP >= 5.5.0用于array_column()或使用栏()

代码语言:javascript
复制
$allcategories = array_column($result2, 'cat_code');

或者foreachquery

代码语言:javascript
复制
foreach($dbh->query($catcodessql) as $row) {
    $allcategories = $row['cat_code'];
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28177682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档