【问题标题】:Get first value of an array [duplicate]获取数组的第一个值[重复]
【发布时间】:2017-03-04 17:07:39
【问题描述】:

我有一个数组:

Array (
[0] => Array
    (
        [0] => Pen
        [1] => Apple
    )

[1] => Array
    (
        [0] => Oooo
        [1] => Pineapple pen
    )

如何获取每个数组的第一个元素?

例如:Pen Oooo

这是我的职责

$parameters = array('wiki_1', 'wiki_2', 'wiki_3', 'wiki_4','wiki_5' ,'wiki_6', 'wiki_7', 'wiki_8', 'wiki_9', 'wiki_10', 'wiki_11', 'wiki_12');

function wiki_custom_fields( $parameters, $id ) {
        foreach ($parameters as $parameter) {
           $wiki_result[] = get_post_custom_values($parameter, $id, true);
        }

    echo '<pre>';
    print_r($wiki_result);
    echo '</pre>';
}

如果我使用print_r($wiki_result[][0]);,则会收到 500 错误。

【问题讨论】:

    标签: php arrays loops foreach associative-array


    【解决方案1】:

    你可以使用array_column函数

    $array =  array(
        array('Pen', 'Apple' ),
        array('Oooo', 'Pineapple pen')
    );
    
    $result = array_column($array, 0);
    
    echo '<pre>';
    print_r($result);
    echo '</pre>';
    

    输出:

    Array
    (
        [0] => Pen
        [1] => Oooo
    )
    

    【讨论】:

      【解决方案2】:

      试试:

      $result = array();
      foreach ($elements as $elem){
          $result[] = $elem[0];
      }
      

      $result 包含 'Pen'、'Oooo'。

      sintaxis $result[] 用于在数组的最后一个位置添加一个元素,与array_push (http://php.net/manual/es/function.array-push.php) 相同

      【讨论】:

        【解决方案3】:

        使用重置http://php.net/manual/es/function.reset.php

        此函数将数组的内部指针设置为第一个元素并返回它。

        $first = reset($array)

        【讨论】:

        • 也比 array_keys 更优化,就像数组包含例如 1000 个值一样,array_keys 会生成一个包含 1000 个位置的数组,只是为了获取第一个元素,重置你不会生成额外的未使用数据消耗记忆。
        • 谢谢。几乎明白了,但它现在看起来像这样 'Array ( [0] => Pen, [1] => Apple )' 我需要得到 'Array ( [0] => Array ( [0] => Pen) [1] => 数组 ([0] => Oooo ))'
        • $r = []; foreach($array as $k => $list){ $r[$k] = reset($list); }
        • 对不起。 Array ( [0] =&gt; Pen, [1] =&gt; Apple ) 我需要得到 Array ( [0] =&gt; Array ( [0] =&gt; Pen ) [1] =&gt; 数组 ( [0] =&gt; Oooo ) )
        • 那么只需 $r[$k][] = reset($list)
        【解决方案4】:
        $param = array('first_key'=> 'First', 2, 3, 4, 5);
        $keys   =   array_keys($param);
        echo "Key = ".$keys[0];
        

        示例:

            $parameters = array('wiki_1', 'wiki_2', 'wiki_3', 'wiki_4','wiki_5' ,'wiki_6', 'wiki_7', 'wiki_8', 'wiki_9', 'wiki_10', 'wiki_11', 'wiki_12');
        
        function wiki_custom_fields( $parameters, $id ) {
                foreach ($parameters as $parameter) {
                   $wiki_result[] = get_post_custom_values($parameter, $id, true);
                }
        
            $keys   =  array_keys($wiki_resul);
            echo "Key = ".$keys[0];
            echo '<pre>';
            print_r("Key = ".$keys[0]);
            echo '</pre>';
        }
        

        【讨论】:

          【解决方案5】:

          试试这个代码

          print_r($wiki_result[0]);
          

          【讨论】:

          • 它只获取数组的第一个元素。 '数组([0] => 笔 [1] => 苹果)'
          • 对不起我的错误。我需要每个关联数组的第一个元素。请参阅主题中的示例
          猜你喜欢
          • 2019-11-26
          • 2023-03-20
          • 2016-07-27
          • 2012-05-03
          • 1970-01-01
          • 2017-12-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多