Используя Mongoose, это сработало для меня:
var find = function(username, next){
User.find({'username': {$regex: new RegExp('^' + username, 'i')}}, function(err, res){
if(err) throw err;
next(null, res);
});
}
Я бы подумал, что вам просто нужно увеличивать количество строк каждый раз, когда вы помещаете новый элемент в массив и отслеживаете строки, которые вы хотите выделить жирным шрифтом ...
$rowCount = 2; //since I have a sticky header in the excel file I start the count at 2
$boldRows = array();
foreach($prices->groups as $group){
$groupItem = array();
$groupItem["category_code"] = $group->category_code;
$groupItem["category_name"] = $group->category_name;
$groupItem["category_description"] = $group->category_description;
array_push($allgroupResult, $groupItem);
array_push($boldRows, $rowCount++); // Store count & increment
foreach($group->skus as $sku){
$skuItem = array();
$skuItem["identifier"] = $sku->info->identifier;
array_push($allgroupResult, $skuItem);
$rowCount++; // Just increment count
}
}
Вам может потребоваться настроить $rowCount
в зависимости от того, как строки соответствуют массивам - массивы основаны на 0, и я не знаю, как будут строиться строки.
На основе PHPExcel Сделать первую строку жирным шрифтом и преобразовать номер строки в строку Excel из . индексы к ссылкам на столбцы в Excel) (модифицировано для PHP), затем вы можете использовать что-то вроде ...
foreach ( $boldRows as $row ) {
$cell_name = excelColumnFromNumber($row)."1";
$objPHPExcel->getActiveSheet()->getStyle( $cell_name )->getFont()->setBold( true );
}
function excelColumnFromNumber($column)
{
$columnString = "";
while ($column > 0)
{
$currentLetterNumber = ($column - 1) % 26;
$columnString = chr($currentLetterNumber + 65) . $columnString;
$column = ($column - ($currentLetterNumber + 1)) / 26;
}
return $columnString;
}