Select zf2:选择列在tablegateway上不起作用

Select zf2:选择列在tablegateway上不起作用,select,model,zend-framework2,Select,Model,Zend Framework2,我以这种方式在模型中创建了方法“fetchAll() public function fetchAll(){ $resultSet = $this->tableGateway->select( function (Select $select) { $select->columns(array('my_alias'=>'my_field')); }); return $resultSet; } 所以,我在控制器中得到了结

我以这种方式在模型中创建了方法“fetchAll()

public function fetchAll(){

    $resultSet = $this->tableGateway->select( function (Select $select) {

        $select->columns(array('my_alias'=>'my_field'));

    });

    return $resultSet;

}
所以,我在控制器中得到了结果

...

$items = $this->getMyTable()->fetchAll();

...
然后我就开始行动了

...

foreach( $items => $item ){ print $item->my_alias; } 

...
但未定义“$item->my_alias”。如果没有“columns”方法,它的工作将失败。怎么了?

试试这个

public function fetchAll(){

    $select = new Select();
    $select->from('table');
    $select->columns(array('my_alias' => 'my_field'));
    $resultSet = $this->tableGateway->selectWith($select);
    return $resultSet;
}

在控制器、动作模型和映射器中显示准确的代码。这将帮助我和任何正在观看的人弄明白这一点。不过看起来很简单