本文整理汇总了PHP中Zend\Db\TableGateway\TableGateway::getResultSetPrototype方法的典型用法代码示例。如果您正苦于以下问题:PHP TableGateway::getResultSetPrototype方法的具体用法?PHP TableGateway::getResultSetPrototype怎么用?PHP TableGateway::getResultSetPrototype使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend\Db\TableGateway\TableGateway
的用法示例。
在下文中一共展示了TableGateway::getResultSetPrototype方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: doUpdateModel
/**
* {@inheritDoc}
*/
protected function doUpdateModel($model)
{
if ($id = $this->getModelId($model)) {
$this->tableGateway->update($this->tableGateway->getResultSetPrototype()->getHydrator()->extract($model), array("{$this->idField} = ?" => $id));
} else {
$this->tableGateway->insert($this->tableGateway->getResultSetPrototype()->getHydrator()->extract($model));
}
}
示例2: selectMany
/**
* @param Select $select
* @param array $options Paginator options
* @param ResultSetInterface $resultSet
* @return array|Paginator
*/
public function selectMany(Select $select, array $options = array(), ResultSetInterface $resultSet = null)
{
if (!$resultSet) {
$resultSet = $this->tableGateway->getResultSetPrototype();
}
if ($options) {
return $this->initPaginator($select, $options, $resultSet);
}
return $this->tableGateway->selectWith($select, $resultSet);
}
示例3: __construct
/**
* Constructs instance.
*
* @param TableGateway $tableGateway
* @param Where|\Closure|string|array $where
* @param null $order
*/
public function __construct(TableGateway $tableGateway, $where = null, $order = null)
{
$select = $tableGateway->getSql()->select();
if ($where) {
$select->where($where);
}
if ($order) {
$select->order($order);
}
$dbAdapter = $tableGateway->getAdapter();
$resultSetPrototype = $tableGateway->getResultSetPrototype();
parent::__construct($select, $dbAdapter, $resultSetPrototype);
}
示例4: __construct
/**
* Constructs instance.
*
* @param TableGateway $tableGateway
* @param null|Where|\Closure|string|array $where
* @param null|string|array $order
* @param null|string|array $group
* @param null|Having|\Closure|string|array $having
*/
public function __construct(TableGateway $tableGateway, $where = null, $order = null, $group = null, $having = null)
{
$sql = $tableGateway->getSql();
$select = $sql->select();
if ($where) {
$select->where($where);
}
if ($order) {
$select->order($order);
}
if ($group) {
$select->group($group);
}
if ($having) {
$select->having($having);
}
$resultSetPrototype = $tableGateway->getResultSetPrototype();
parent::__construct($select, $sql, $resultSetPrototype);
}
示例5: test__construct
public function test__construct()
{
// constructor with only required args
$table = new TableGateway('foo', $this->mockAdapter);
$this->assertEquals('foo', $table->getTable());
$this->assertSame($this->mockAdapter, $table->getAdapter());
$this->assertInstanceOf('Zend\\Db\\TableGateway\\Feature\\FeatureSet', $table->getFeatureSet());
$this->assertInstanceOf('Zend\\Db\\ResultSet\\ResultSet', $table->getResultSetPrototype());
$this->assertInstanceOf('Zend\\Db\\Sql\\Sql', $table->getSql());
// injecting all args
$table = new TableGateway('foo', $this->mockAdapter, $featureSet = new Feature\FeatureSet(), $resultSet = new ResultSet(), $sql = new Sql($this->mockAdapter, 'foo'));
$this->assertEquals('foo', $table->getTable());
$this->assertSame($this->mockAdapter, $table->getAdapter());
$this->assertSame($featureSet, $table->getFeatureSet());
$this->assertSame($resultSet, $table->getResultSetPrototype());
$this->assertSame($sql, $table->getSql());
// constructor expects exception
$this->setExpectedException('Zend\\Db\\TableGateway\\Exception\\InvalidArgumentException', 'Table name must be a string or an instance of Zend\\Db\\Sql\\TableIdentifier');
new TableGateway(null, $this->mockAdapter);
}
示例6: __invoke
/**
* {@inheritdoc}
*/
public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
{
$config = $this->config[$requestedName];
$dbAdapter = $container->get(isset($config['adapter']) ? $config['adapter'] : 'db');
if (isset($config['schema'])) {
$config['table'] = new TableIdentifier($config['table'], $config['schema']);
}
$featureSet = new FeatureSet();
$featureSet->addFeature(new CommonCallFeature($config['primary']));
if (isset($config['invokable'])) {
$config['class'] = $config['invokable'];
}
if (isset($config['class'])) {
if (!class_exists($config['class'])) {
throw new \RuntimeException("Class '{$config['class']}' not found ");
}
/** @var \Zend\Db\TableGateway\TableGateway $table */
$table = new $config['class']($config['table'], $dbAdapter, $featureSet);
} else {
$table = new TableGateway($config['table'], $dbAdapter, $featureSet);
}
if (isset($config['row'])) {
if ($config['row'] === true) {
$config['row'] = 'Zend\\Db\\RowGateway\\RowGateway';
}
if (is_string($config['row'])) {
if (!class_exists($config['row'])) {
throw new \RuntimeException("Class '{$config['row']}' not found ");
}
$rowGatewayPrototype = new $config['row']($config['primary'], $config['table'], $dbAdapter, $table->getSql());
} elseif (is_object($config['row'])) {
$rowGatewayPrototype = $config['row'];
} else {
throw new \InvalidArgumentException('Error row argument');
}
$table->getResultSetPrototype()->setArrayObjectPrototype($rowGatewayPrototype);
}
return $table;
}
示例7: fetchRawSql
public function fetchRawSql($sql)
{
return $this->tableGateway->getResultSetPrototype()->set($this->executeRawSql($sql));
}
示例8: getItemSetProto
/**
*
* @return TableEntitySetInterface
*/
public function getItemSetProto()
{
return $this->tableGateway->getResultSetPrototype();
}