doujia2463 2012-10-06 15:41
浏览 38
已采纳

php / mysql数组删除字段

I am running a query on a dbase that returns a multi-field recordset or array on fetch. The array is multi-field as I need several fields to output to the screen. However, I then want to save an array of just one variable, the id for each record. to compare against another list of records. So I need to, in effect, strip all but one field from the array.

In effect, I want to reduce (not using proper array notation):

{1 red dog, 2 orange cat, 3 yellow canary}

to

{1,2,3}

Is there an easy way to do this?

Thanks in advance!

  • 写回答

3条回答 默认 最新

  • dongpu1879 2012-10-06 15:52
    关注

    Basically what you want is called array plucking; here's an RFC to introduce this into the language, but it hasn't been accepted.

    In the meantime you'd just have to do it the old fashioned way:

    $a = array(
        array('id' => 1, 'title' => 'title1'),
        array('id' => 2, 'title' => 'title2'),
    );
    
    array_map(function($v) {
        return $v['id'];
    }, $a);
    
    // returns array(1, 2)
    

    Before 5.3 you'd have to write it like so:

    function getid($v)
    {
        return $v['id'];
    }
    
    array_map('getid', $a);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 无源定位系统的时差估计误差标准差
  • ¥15 请问这个代码哪里有问题啊
  • ¥20 python--version在命令端输入结果Python is not defined怎么办?还有pip不是exe格式是不是没安装成功?
  • ¥15 通过GaussianView进行结构微调消除虚频
  • ¥15 调用transformers库
  • ¥15 由于导出的数据名字中带有/,导致Matlab打不开,怎么办?
  • ¥15 新硬盘安装的程序总是崩溃,提示遇到错误
  • ¥15 openpcdet自制数据集评估bev精度和3d精度相同
  • ¥15 excel 上下按钮 显示行
  • ¥20 云卓h12pro 数传问题