Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Sequence.php
Go to the documentation of this file.
1 <?php
8 
11 
15 class Sequence implements SequenceInterface
16 {
20  protected $connectionName;
21 
25  protected $sequenceTable;
26 
30  protected $resource;
31 
37  public function __construct(
41  ) {
42  $this->resource = $resource;
43  $this->connectionName = $connectionName;
44  $this->sequenceTable = $sequenceTable;
45  }
46 
50  public function getNextValue()
51  {
52  $this->resource->getConnection($this->connectionName)
53  ->insert($this->resource->getTableName($this->sequenceTable), []);
54  return $this->resource->getConnection($this->connectionName)
55  ->lastInsertId($this->resource->getTableName($this->sequenceTable));
56  }
57 
61  public function getCurrentValue()
62  {
63  $select = $this->resource->getConnection($this->connectionName)->select();
64  $select->from($this->resource->getTableName($this->sequenceTable));
65  return $this->resource->getConnection($this->connectionName)->fetchRow($select);
66  }
67 }
__construct(ResourceConnection $resource, $connectionName, $sequenceTable)
Definition: Sequence.php:37