OOP version to create a SQL insert statement

Code
<?php

use Zend\Db\Sql\Insert;

$insert = new Insert('table_name');
$insert->columns(['id''name''start_date']);
$insert->values([1'year''2015-01-01']);

// use a adapter plattform to prevent security issues (escape)!
// Zend\Db\Adapter\Platform\PlatformInterface
$plattform null;
echo 
$insert->getSqlString($plattform) . PHP_EOL;

// assoc values are possible too
$values = [
    
'id' => 1,
    
'name' => 'year',
    
'start_date' => '2015-01-01',
];
$insert->values($values);
echo 
$insert->getSqlString($plattform);
Result
INSERT INTO "table_name" ("id", "name", "start_date") VALUES ('1', 'year', '2015-01-01')
INSERT INTO "table_name" ("id", "name", "start_date") VALUES ('1', 'year', '2015-01-01')
Used Versions
PHP 7.1, Zend 3.0, Symfony 3.2, Laravel 5.2, PHPUnit 5.6, Doctrine 2.6