首页  >  问答  >  正文

有没有办法从 PHP 数组中检索特定的“列”?

我有一个数组数组,其结构如下:

array(array('page' => 'page1', 'name' => 'pagename1')
      array('page' => 'page2', 'name' => 'pagename2')
      array('page' => 'page3', 'name' => 'pagename3'))

是否有一个内置函数可以返回一个仅包含“name”键值的新数组?所以我会得到:

array('pagename1', 'pagename2', 'pagename3')


P粉423694341P粉423694341334 天前641

全部回复(2)我来回复

  • P粉514001887

    P粉5140018872023-10-21 17:49:30

    PHP 5.5 开始,您可以使用 array_column()

    <?php
    $samples=array(
                array('page' => 'page1', 'name' => 'pagename1'),
                array('page' => 'page2', 'name' => 'pagename2'),
                array('page' => 'page3', 'name' => 'pagename3')
                );
    $names = array_column($samples, 'name');
    print_r($names);

    查看实际操作

    回复
    0
  • P粉042455250

    P粉0424552502023-10-21 11:46:32

    为什么它必须是内置函数?不,没有,自己写。

    与本线程中的其他内容相比,这是一个很好且简单的方法。

    $namearray = array();
    
    foreach ($array as $item) {
        $namearray[] = $item['name'];
    }

    在某些情况下,如果键没有命名,您可以这样做

    $namearray = array();
    
    foreach ($array as $key => $value) {
        $namearray [] = $value;
    }

    回复
    0
  • 取消回复