select CakePHP 3 表单输入默认数组的第二项

select the second item of an array by default in form input CakePHP 3

在我的控制器中,我准备好一个数组来填充输入字段的下拉值,如下所示:

    $this->loadModel('Meetings');

    $meetings_query = $this->Meetings->find('list', ['keyField' => 'id', 'valueField' => 'date'])
            ->where( ["Meetings.date >= " =>  date('Y-m-d') ] )
            ->order( ['Meetings.date' => 'ASC'] );

    $meetings_raw = $meetings_query->toArray();

    $meetings = array();

    foreach( $meetings_raw as $key => $value ){

        if( !empty( $value ) ){
            $meetings[$key] = $value->format('Y-m-d');
        }           
    }

这将构建一个与此类似的数组:

Array ( [26] => 2016-05-25 [22] => 2016-05-28 [23] => 2016-05-30 )

然后显示为 select 字段,格式如下:

echo $this->Form->input( 'meeting_id', ['label' => 'Meeting']);

数组的第一项总是预先select在下拉列表中。我想要实现的是默认情况下始终 select 数组中的第二项。

这可能吗?

非常感谢任何帮助或指导。

// convert to array
$a = $meetings->toArray();
// extract keys to new array
// removes the first from the array
$s = array_slice(array_keys($a),0);

echo $this->Form->input( 'meeting_id', [
 'label' => 'Meeting',
 'default' => array_shift($s) // use first value from sliced array
]);