Php获取最后一个数组键

时间:2011-03-24 11:27:48

标签: php arrays

我正在使用此代码生成JSON字符串,但面对一个问题,我试图找出这是否是最后一个元素,我使用此if(end($aData) != $aD)但这是比较值,有一个问题,当在数组中是相同的值时,我如何比较$ keys(获取最后一个键并与当前键进行比较),或者获取最后一个元素。

$ret    =   '[';
        foreach($aDatas as $aData)
        {
            $ret    .=  "{";
            foreach($aData as $key=>$aD)
            {               
                $ret    .=  '"'.$key.'":"'.$aD.'"';
                if(end($aData) != $aD)
                    $ret    .=  ',';
            }
            $ret    .=  "}";
            if(end($aDatas) != $aData)
                $ret    .=  ',';
        }
        echo $ret.']';

3 个答案:

答案 0 :(得分:7)

我可以建议这个PHP内置函数json_encode()吗?

可能会节省很多时间。

答案 1 :(得分:3)

一种选择是使用key()功能:

end($aData);
if(key($aData) != $key)

答案 2 :(得分:1)

你知道数组的大小。因此,只需在每个循环中增加一个计数器,然后检查它是否是最后一个元素。