private function getQueryData($arr, $single = false) { $datafields = array(); $question_marks = array(); $insert_values = array(); $tmp = array_slice($arr, 0, 1); $first = array_shift($tmp); if (is_array($first) && !$single) { foreach ($arr as $name => $d) { $question_marks[] = '(' . BaseTable::placeholders('?', sizeof($d)) . ')'; $insert_values = array_merge($insert_values, array_values($d)); } $tmp = array_slice($arr, 0, 1); $first = array_shift($tmp); foreach ($first as $key => $value) { $datafields[] = $key; } } else { $question_marks[] = '(' . BaseTable::placeholders('?', sizeof($arr)) . ')'; $insert_values = array_merge($insert_values, array_values($arr)); foreach ($arr as $key => $value) { $datafields[] = $key; } } return array($datafields, $question_marks, $insert_values); }