for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Hgraca\MicroDbal\Crud\QueryBuilder\Sql;
final class CreateTokenCollection
{
/** @var CreateToken[] */
private $collection;
/** @var int */
private $bindingCounter = 0;
public function __construct(array $dataSet)
foreach ($dataSet as $column => $value) {
$this->collection[] = new CreateToken($column, $value, $this->bindingCounter++);
};
}
public function getColumnList(): string
$columnList = [];
foreach ($this->collection as $createToken) {
$columnList[] = $createToken->getColumn();
return '(`' . implode('`, `', $columnList) . '`)';
public function getPlaceholderList(): string
$stringTokens = [];
$stringTokens[] = $createToken->toString();
return '(' . implode(', ', $stringTokens) . ')';
public function getBindingsList(): array
$bindingsList = [];
$bindingsList[] = $createToken->getBinding();
return array_merge(...$bindingsList);