Вставка нескольких строк одним запросом в Symfony 1.4 и Doctrine

У меня есть коллекции клиентов, и каждая коллекция может содержать много клиентов. Этот код PHP зацикливает коллекции и клиентов внутри каждой коллекции. И сохраняет клиента в базе данных.

foreach ($collections as $key => $collection) {
foreach ($collection as $k => $client) {
$name = $client['name'];
//...
$clientObj = new Client();
$clientObj->setName($name);
//..
$clientObj->save();
}
}

Я хочу сгруппировать каждую коллекцию в один запрос Mysql, а затем перейти к следующей коллекции. Поскольку предыдущий код выполняет один запрос на клиента, а для повышения производительности нам нужен один запрос на коллекцию.

Как мы можем сделать это?

2

Решение

Добавить каждую запись в Doctrine_Collection вызов save() на объекте коллекции.

 * Saves all records of this collection and processes the
* difference of the last snapshot and the current data

Как пример:

$collection = new Doctrine_Collection('client');
$collection->add($client1);
$collection->add($client2);
$collection->save();
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]