function set_insert_batch($key, $value = '', $escape = TRUE)
{
$key = $this->_object_to_array_batch($key);
if (!is_array($key)) {
$key = array($key => $value);
}
$keys = array_keys(current($key));
sort($keys);
foreach ($key as $row) {
if (count(array_diff($keys, array_keys($row))) > 0 or count(array_diff(array_keys($row), $keys)) > 0) {
// batch function above returns an error on an empty array
$this->ar_set[] = array();
return;
}
ksort($row);
// puts $row in the same order as our keys
if ($escape === FALSE) {
$this->ar_set[] = '(' . implode(',', $row) . ')';
} else {
$clean = array();
foreach ($row as $value) {
$clean[] = $this->escape($value);
}
$this->ar_set[] = '(' . implode(',', $clean) . ')';
}
}
foreach ($keys as $k) {
$this->ar_keys[] = $this->_protect_identifiers($k);
}
return $this;
}