Проникновение в функцию foreach

Я тяну волосы здесь, я просто не могу заставить это работать.

Я должен сделать цикл foreach, чтобы получить всех авторов на веб-сайте, я тогда должен отфильтровать тех с 0 опубликованными статьями и затем повторить авторов со статьями в ЛИТИЙ UL со специальным предложением

  • tag for the last author in the array:

    My code at the moment has two functions, one to prefilter all authors that have at least one article and then in the second function count the number of authors left in the filtered array to then give the last entry in the array a special li tag. Code so far:

    /*********************
        Echo Filtered List
        *********************/
        function filtered_list() {
            $authors = get_users('orderby=nicename');
            $all_authors = array();
             if ( count_user_posts( $author->id ) >= 1 ) {
                 return true;
            }
    
        }
    
    
        function contributors() {
    
        $i = 0;
        filtered_list();
        $len = count($all_authors);
        foreach ($all_authors as $author ) {
              if ( count_user_posts( $author->id ) >= 1 ) {
                    if ($i == $len - 1) {
                        echo "
  • ";} else { echo "
  • ";} $i++;
  • 0
    nl ja de
    Что точно вы пытающийся сделать? Вы подвергаете сомнению, кажется неясным.
    добавлено автор Rikesh, источник

    1 ответы

    Если бы вы прочитываете свой код, вы, вероятно, видели бы, почему он не работает.

    Сначала: Объемы

    Читайте о переменных объемах в Руководство PHP. В основном переменная, объявленная в функции, только доступна в той функции, так $all_authors является пустыми внутренними участниками (), поскольку это никогда не инициализировалось.

    filtered_list функция должна возвращать фильтрованный список авторов, таким образом, необходимо образовать петли, хотя , $authors и добавляют автора, чтобы $all_authors , если, и только если у нее есть 1 или более постов. После петли возвратите множество.

    Теперь можно получить фильтрованный список, установив возвращаемое значение функции кулака к $all_authors в участники (или еще лучше, просто назовите их $authors ).

    Теперь вы готовы повторить по списку авторов и найти их почту. Чтобы сделать это, вам нужны две петли. Один для авторов, и один для постов.

    foreach author in authors
        foreach post in author->posts
            if post is last post
                print special stuff
            else
                print normal stuff
            endif
        endforeach
    endforeach
    

    Надежда, которой это помогает, и что вы узнаете о чем-то из нее. Пункт: Читайте, хотя ваша строка кода с методической точностью и объясняет себе, что она делает.

    1
    добавлено
    Это предназначалось как совет, I' m жаль, если это казалось агрессивным. Объем isn' t единственная вещь, которая является неправильной. That' s, почему я упомянул его.
    добавлено автор Jørgen R, источник
    добавлено автор Jørgen R, источник
    Довольный помочь. Не стесняйтесь отмечать его, как решено (галочка).
    добавлено автор Jørgen R, источник
    Привет, it' s хорошо, я ценю вашу помощь. Я действительно понимаю переменные объемы, но я делал это в течение такого количества часов, что я попытался переместить код и сделал его реальным беспорядком. Ранее это хорошо работало за исключением одной вещи - я фильтровал цикл foreach и после этого был сделан я couldn' t вполне заставляют его находить, что последний вход в петле дает ему специальный тег HTML, that' s, когда tropuble, действительно начатый.
    добавлено автор user1945912, источник
    ПОЧТИ! Но благодаря вашему коду мне удалось наконец добраться там! Крайне благодарным. Вы устанавливаете, чтобы возвратить множество после одного} слишком многие, таким образом, я зафиксировал это, и я должен был щипнуть вторую функцию немного, чтобы заставить его работать точно, поскольку мне нужно оно. Еще раз спасибо:)
    добавлено автор user1945912, источник
    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, в чат ссылку. За рекламу и мат - БАН!

    WordPress – русскоговорящее сообщество
    WordPress – русскоговорящее сообщество
    768 участник(ов)

    Группа пользователей популярнейшей CMS WordPress. Запрещено: мат и ругань реклама, спам (в т.ч. каналами) религия, политика, наркотики приглашение ботов без согласования #nowarez

    WordPress for developers
    WordPress for developers
    761 участник(ов)

    Группа для разработчиков wordpress Запрещено - мат - оскорбления - флуд - реклама ip телефония https://goo.gl/wBaqci Другие чаты Битрикс https://t.me/bitrixfordevelopers Битрикс работа https://t.me/bitrix_work

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

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