MySql заканчиваются в сгруппированный многомерный массив, I' m пропавшие без вести чего-то

Некоторые новые глаза могли, пожалуйста, сказать мне, что я делаю неправильно здесь? Я уверен, что это - что-то простое.

Запрос SQL, который восстанавливает набор данных:

SELECT * FROM articles WHERE category='category' ORDER BY publish_date DESC, id DESC LIMIT 0, 10

Многомерный массив, которого я пытаюсь достигнуть:

list [ 
    publish_date [
        0 [ id, title, body ]
        1 [ id, title, body ]
        2 [ id, title, body ]]
    publish_date [
        0 [ id, title, body ]
        1 [ id, title, body ]]
    publish_date [
        0 [ id, title, body ]
        1 [ id, title, body ]
        2 [ id, title, body ]
        3 [ id, title, body ]]]
Etc..

Я играл со следующей функцией PHP в течение нескольких часов теперь:

$result = $sql->prepareQuery($query_string);

// iterate through array and place results in an array at row index
$list = ['group_date' => ' '];
$r = 0;
while ($rows = mysql_fetch_assoc($result)) {
    if ($list['publish_date'] != $rows['pub_date']) {
        $list['publish_date'] = $rows['pub_date'];
        $r = 0;
        foreach ($rows as $key => $val) {
            $list['publish_date'][$r[$key = $val]];
        }
        $r++;
    }
    else {
        foreach ($rows as $key => $val) {
            $list['publish_date'][$r[$key = $val]];
        }
        $r++;
    }
}
// return result
print_r($list);
1
nl ja de

1 ответы

Думайте, что вы делаете вещи к сложному:

$list = array();
$current_date = '';
while ($rows = mysql_fetch_assoc($result)) {
    if ($current_date != $rows['pub_date']) {
        $current_date = $rows['pub_date'];
        $list[$current_date] = array();
    }
    $list[$current_date][] = $rows;
}
1
добавлено
Да я хотел бы знать также, кто-то, вероятно, downvoted просто, потому что вы используете функцию mysql_*. Но это wasn' t пункт вопроса или ответа. Если это так, можно изменить его, чтобы в то время как ($rows = $result-> усилие (PDO:: FETCH_ASSOC)) {
добавлено автор Pitchinnate, источник
Работает отлично.. не уверенный, кто вниз оценил вас, но от меня, спасибо.
добавлено автор obmon, источник
Еще раз спасибо. Добавленный моя заключительная функция к OP.
добавлено автор obmon, источник
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp