dongxi1320 2013-12-02 04:17
浏览 51

如何按位置获取PHP数组中的键?

I have an array where I store key-value pair only when the value is not null. I'd like to know how to retrieve keys in the array?

  <?php
        $pArray = Array();

        if(!is_null($params['Name']))
            $pArray["Name"] = $params['Name'];

        if(!is_null($params['Age']))
            $pArray["Age"] = $params['Age'];

        if(!is_null($params['Salary']))
            $pArray["Salary"] = $params['Salary'];

        if(count($pArray) > 0)
        {
          //Loop through the array and get the key on by one ...                            
        }
  ?>

Thanks for helping

  • 写回答

4条回答 默认 最新

  • dongou3286 2013-12-02 04:21
    关注

    PHP's foreach loop has operators that allow you to loop over Key/Value pairs. Very handy:

    foreach ($pArray as $key => $value)
    {
        print $key
    }
    
    //if you wanted to just pick the first key i would do this: 
    
        foreach ($pArray as $key => $value)
    {
        print $key;
        break;
    }
    

    An alternative to this approach is to call reset() and then key():

    reset($pArray);
    $first_key = key($pArray);
    

    It's essentially the same as what is happening in the foreach(), but according to this answer there is a little less overhead.

    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题