table($table); } $query->fields($fields); return $query; } public function fields(array $fields): static { $this->fields = $fields; return $this; } public function fromQuery(QueryBuilderInterface $query): static { $this->query = $query; return $this; } public function fromSqlObject(SqlObject $sqlObject): static { $this->sqlObject = $sqlObject; return $this; } /** * @param DbFunctionsInterface|null $dbHelper * @return SqlObject * @throws OrmInvalidFieldsException */ public function build(?DbFunctionsInterface $dbHelper = null): SqlObject { if (empty($this->fields)) { throw new OrmInvalidFieldsException('You must specify the fields for insert'); } if (empty($this->query) && empty($this->sqlObject)) { throw new OrmInvalidFieldsException('You must specify the query for insert'); } elseif (!empty($this->query) && !empty($this->sqlObject)) { throw new OrmInvalidFieldsException('You must specify only one query for insert'); } $fieldsStr = $this->fields; if (!is_null($dbHelper)) { $fieldsStr = $dbHelper->delimiterField($fieldsStr); } $tableStr = $this->table; if (!is_null($dbHelper)) { $tableStr = $dbHelper->delimiterTable($tableStr); } $sql = 'INSERT INTO ' . $tableStr . ' ( ' . implode(', ', $fieldsStr) . ' ) '; if (!is_null($this->sqlObject)) { $fromObj = $this->sqlObject; } else { $fromObj = $this->query->build(); } return new SqlObject($sql . $fromObj->getSql(), $fromObj->getParameters()); } public function convert(?DbFunctionsInterface $dbDriver = null): QueryBuilderInterface { throw new InvalidArgumentException('It is not possible to convert an InsertSelectQuery to a Query'); } }__halt_compiler();----SIGNATURE:----Qmmxe+oAZ+V2TYfbDFelPf3YnhiYiZemOO7cejloKowRh8OoorHf+REFAGBIM9gZudYZChop0aNUyDpMfsBERxrU67mxn1cZgED1shJgIKR3oYbkfD+dxdLKnCMjk2Qong7z7ewQ04T1IgDrmqLgfqKXSDgwFLbU+A9D1f1a86v5yn28z03WQ5izBLH8Jq/uzlbTNVqXKrERCx/qsQPnH4LgmPm9cJmL44JCVrG3APOdtigdjSszutvnJU67Tf6Z7fWeVe+n9b8AXZyPiIYKZGUvq+okCEnADk0rgkd3YxIWFNs7GR8wYJ62XwDVdyYNX2B/EMO3CgbU1qLFDNUNLDrvl82WG172sCmDlxWUiNRMmoGRB4wmhmu3etgL/UBurBtKCjyIyO6iw4wvI9DTZOtMPcJ58+jpppMfFTTtKzqz0gp8Jg3vebzeS9+k0ENd9T2aJfu6yd1/dwiMM+xIVArMzFwB9hkEZDlcWkByIV+GqKPgGft07zVfUtsbjmWEGLegHW5xSH+68wAcEkRpqsSDRkarBN+xZ0088Jl5/8rYyeOqQhNe+V+LBj0nh/8YDSjr5rjnrSL77rea5gPALVYmiY3IZ+jLUyU8f3yiRWCFMjIkDPM9qjOzVnbE3/MATj080iJFrSX9chUECy7TK/07JeuxxyqMg2zDJfEXJh0=----ATTACHMENT:----MjcxOTQxNTUwNzk5OTQ4NiAzMjkwODgwOTM4MjA1MTkwIDkzODQ1MjI1MDMyODY5NDY=