insert() public méthode

Will be further optimized in the future.
public insert ( array $row ) : mixed
$row array
Résultat mixed
Exemple #1
0
 public function testInsert()
 {
     $a = ['user' => [1 => ['name' => 'John', 'surname' => 'Smith'], 2 => ['name' => 'Sarah', 'surname' => 'Jones']]];
     $p = new Persistence_Array($a);
     $m = new Model($p, 'user');
     $m->addField('name');
     $m->addField('surname');
     $m->insert(['name' => 'Foo', 'surname' => 'Bar']);
     $this->assertEquals(['user' => [1 => ['name' => 'John', 'surname' => 'Smith'], 2 => ['name' => 'Sarah', 'surname' => 'Jones'], 3 => ['name' => 'Foo', 'surname' => 'Bar', 'id' => 3]]], $a);
 }
Exemple #2
0
 public function testModelInsert()
 {
     $a = ['user' => [1 => ['name' => 'John', 'surname' => 'Smith'], 2 => ['name' => 'Sarah', 'surname' => 'Jones']]];
     $p = new Persistence_SQL('sqlite::memory:');
     $p->connection->expr('drop table if exists user')->execute();
     $p->connection->expr('create table user(id integer primary key autoincrement, name varchar(255), surname varchar(255))')->execute();
     $m = new Model($p, 'user');
     $m->addField('name');
     $m->addField('surname');
     $ms = [];
     foreach ($a['user'] as $id => $row) {
         $ms[] = $m->insert($row);
     }
     $this->assertEquals('John', $m->load($ms[0])['name']);
     $this->assertEquals('Jones', $m->load($ms[1])['surname']);
 }
Exemple #3
0
 public function testActual()
 {
     $db = new Persistence_SQL($this->db->connection);
     $a = ['user' => [1 => ['id' => 1, 'name' => 'John', 'surname' => 'Smith']]];
     $this->setDB($a);
     $m = new Model($db, 'user');
     $m->addField('first_name', ['actual' => 'name']);
     $m->addField('surname');
     $m->insert(['first_name' => 'Peter', 'surname' => 'qq']);
     $m->loadBy('first_name', 'John');
     $this->assertEquals('John', $m['first_name']);
     $d = $m->export();
     $this->assertEquals('John', $d[0]['first_name']);
     $a = ['user' => [1 => ['id' => 1, 'name' => 'John', 'surname' => 'Smith'], 2 => ['id' => 2, 'name' => 'Peter', 'surname' => 'qq']]];
     $this->assertEquals($a, $this->getDB());
     $m['first_name'] = 'Scott';
     $m->save();
     $a = ['user' => [1 => ['id' => 1, 'name' => 'Scott', 'surname' => 'Smith'], 2 => ['id' => 2, 'name' => 'Peter', 'surname' => 'qq']]];
     $this->assertEquals($a, $this->getDB());
 }