CakePHP回显数组输出foreach()迭代的第一个和最后一个记录

时间:2011-03-24 22:24:37

标签: arrays cakephp loops foreach

我能够访问并输出完整的Zip项目列表,如此(这是按预期工作):

......(这是foreach中的一个foreach)

foreach ($plan_edit['Zip'] as $zip) :
    echo $zip['title'] . "<br />";
endforeach; ...

返回:

Array
(
    [0] => Array
        (
            [id] => 110
            [state_id] => 1
            [title] => 97701
            [PlansZip] => Array
                (
                    [id] => 83698
                    [plan_id] => 443
                    [zip_id] => 110
                )

        )

    [1]

我试图只获取每个主记录的每个数组的第一个和最后一个值(['title'])。

我一直在搞乱phps数组current()和end()函数,但我只能得到“数组” “与那些打印出来。

我知道我做错了什么,但此时失去了方向。

欢迎对我的工作/方法提出任何建设性的批评。

这就是我目前所处的位置:

<?php

foreach ($plan_edit['Zip'] as $zip) :
    echo current($zip['title']) . "<br />";
     endforeach;

foreach ($plan_edit['Zip'] as $zip) :
    echo end($zip['title']) . "<br />";
     endforeach; 

     ?>

1 个答案:

答案 0 :(得分:3)

$first = reset($plan_edit['Zip']);
$last = end($plan_edit['Zip']);
echo $first['title'];
echo $last['title'];

如果数组以数字方式编制索引,您也可以这样做:

echo $plan_edit['Zip'][0]['title'];
echo $plan_edit['Zip'][count($plan_edit['Zip']) - 1]['title'];