Задать вопрос
@Spiriiit

Можно подобное преобразование массива сделать без цикла?

Доброго времени суток!
Делаю вывод из базы в массив, но печалит наличие второго цикла, подскажите пожалуйста, можно ли обойтись без него, дабы повысить производительность?

function mysql_query_array($query, $error="error: mysql_query_array"){
    $r = mysql_query($query) or die($error);
    $row = mysql_fetch_assoc($r);

    $row_key = array_keys($row);

    $j=0;
    do{
        for($i=0; $i<count($row_key); $i++){
            $row_array[$row_key[$i]][$j] = $row[$row_key[$i]];
        }

        $j++;
    } while($row = mysql_fetch_assoc($r));

    unset($row);

    return $row_array;
}


И что скажите, уместно тут unset?
  • Вопрос задан
  • 2385 просмотров
Подписаться 1 Оценить Комментировать
Ответ пользователя Oleg К ответам на вопрос (6)
@ollisso
Если задача преобразовать такой результат:
id, name, var
1, name1, 10
2, name2, 10
3, name3, 30

в такой:
array(
id => array(0 => 1,0 => 2,0 => 3),
name => array(0 => name1,0 => name2,0 => name3),
var => array(0 => 10, 0 => 20, 0 => 30),
)


то код в принципе работает.

И повысить прозводительность его особо не получится, а если получиться то на сотые процента, т.е. это как экономия на спичках.

Вопрос вам: вы уверены что это самая важная часть кода которую надо оптимизировать в первую очередь ? :)
Ответ написан
Комментировать