За последние 24 часа нас посетили 72169 программистов и 1653 робота. Сейчас ищут 892 программиста ...

прогнать теги li через цикл for

Тема в разделе "PHP для новичков", создана пользователем nevajno22, 31 авг 2017.

  1. nevajno22

    nevajno22 Активный пользователь

    С нами с:
    14 янв 2012
    Сообщения:
    22
    Симпатии:
    1
    Есть допустим 100 тегов <li> , как их через цикл провести?Что бы к примеру выделить четные.
    Вопрос не в том как это все писать и получить результат,а в том,как сделать что бы цикл распознал эти теги <li>
     
  2. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.211
    Симпатии:
    186
    В смысле распознал?
    --- Добавлено ---
    То есть уже есть список, где 100 li и надо выделить четные строки?
    --- Добавлено ---
    Записать весь список в строку и искать открывающий тег и закрывающий и вести счёт
     
  3. nevajno22

    nevajno22 Активный пользователь

    С нами с:
    14 янв 2012
    Сообщения:
    22
    Симпатии:
    1
    Весь список в строку?Все сто тегов в одну строчную переменную записать?А если их например будет не сто,а 3000?По другому конечно представлял это.А есть какой то пример?
     
  4. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.211
    Симпатии:
    186
    А не проще вывод сделать сразу, как надо?
     
  5. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Так, это на клиенте или на сервере? Какая задача решается, автор? Четные li цветом выделить небось?
     
    Михаил Запаленов нравится это.
  6. nevajno22

    nevajno22 Активный пользователь

    С нами с:
    14 янв 2012
    Сообщения:
    22
    Симпатии:
    1
    Верно,четным нужный цвет.Сами теги провел через foreach,но не пойму как теперь к четным выставить нужный цвет.
    Вот сам код:
    PHP:
    1.     <?php
    2.         $i = array("<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 0;\" title = \"Привет!\"></li></a>",
    3.                    "<a href = \"#\"><li  style = \"width: 20px; height: 19px; top: 0;left: 18px;\" title = \"Привет!\"></li></a>",
    4.                    "<a href = \"#\"><li  style = \"width: 20px; height: 19px; top: 0;left: 18px;\" title = \"Привет!\"></li></a>",
    5.                    "<a href = \"#\"><li  style = \"background: yellow ; width: 18px; height: 19px; top: 0;left: 38px;\" title = \"Привет!\"></li></a>",
    6.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 56px;\" title = \"Привет!\"></li></a>",
    7.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 74px;\" title = \"Привет!\"></li></a>",
    8.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 93px;\" title = \"Привет!\"></li></a>",
    9.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 112px;\" title = \"Привет!\"></li></a>",
    10.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 131px;\" title = \"Привет!\"></li></a>",
    11.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 149px;\" title = \"Привет!\"></li></a>",
    12.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 167px;\" title = \"Привет!\"></li></a>",
    13.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 186px;\" title = \"Привет!\"></li></a>",
    14.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 204px;\" title = \"Привет!\"></li></a>",
    15.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 223px;\" title = \"Привет!\"></li></a>",
    16.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 242px;\" title = \"Привет!\"></li></a>",
    17.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 261px;\" title = \"Привет!\"></li></a>",
    18.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 280px;\" title = \"Привет!\"></li></a>",
    19.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 298px;\" title = \"Привет!\"></li></a>",
    20.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 316px;\" title = \"Привет!\"></li></a>",
    21.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 335px;\" title = \"Привет!\"></li></a>",
    22.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 353px;\" title = \"Привет!\"></li></a>",
    23.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 371px;\" title = \"Привет!\"></li></a>",
    24.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 390px;\" title = \"Привет!\"></li></a>",
    25.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 409px;\" title = \"Привет!\"></li></a>",
    26.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 428px;\" title = \"Привет!\"></li></a>",
    27.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 447px;\" title = \"Привет!\"></li></a>",
    28.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 465px;\" title = \"Привет!\"></li></a>",
    29.                    "<a href = \"#\"><li  style = \"width: 18px; height: 19px; top: 0;left: 484px;\" title = \"Привет!\"></li></a>",
    30.                    "<a href = \"#\"><li  style = \"width: 19px; height: 19px; top: 0;left: 502px;\" title = \"Привет!\"></li></a>",
    31.         );
    32.     ?>
    33.    
    34.     <?php foreach($i as $value){
    35.        
    36.         echo $value;
    37.        
    38.     }  ?>
     
  7. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Эхехе.
    Во-первых, у вас во всех li одинаковый на 90% style. Зачем? Лучше вынести это в CSS-класс и назначить этот класс вашим li.
    Во-вторых, изучайте CSS. И, в частности, css-селекторы. Задача, которую вы пытаетесь решить, не требует участия сервера, не требует перебора элементов и вообще не требует внимания разработчика. Потому что просто можно попросить браузер красить четные и нечетные элементы по-разному. На чистом CSS. Без капли исполняемого кода. Я гарантирую это.
     
    nevajno22 нравится это.
  8. nevajno22

    nevajno22 Активный пользователь

    С нами с:
    14 янв 2012
    Сообщения:
    22
    Симпатии:
    1
    Класс!Про чистый CSS даже не помышлял,хотя может потому что определенный цвет на четные,это просто проверка на работоспособность.
    Но что если в тег li данные будут приходить из базы или например пользователь будет в них что то заливать.Тут ведь по любому понадобится сортировка через цикл?
     
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Выдайте каждому li некий уникальный идентификатор. Когда будете дергать базу, запоминайте для какого иднетификатора дергаете изменение. Либо с сервера в ответе указывайте, для кого это изменение пересылается. На клиенте просто по этому идентификатору находите ваш li и работаете с ним. Для этого в JS есть специальные функции. getElementById, getElementsByClass, querySelector и так далее. Все намного проще, чем вы думаете.
     
    nevajno22 нравится это.
  10. nevajno22

    nevajno22 Активный пользователь

    С нами с:
    14 янв 2012
    Сообщения:
    22
    Симпатии:
    1
    Ну видимо да,подозревал что с JS проще будет,просто было интересно на чистом php сделать.Спасибо за ответ!
     
  11. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Не надо на сервере пилить логику клиента. Мертвая затея. Логику клиента надо паковать в JS и оставлять на совесть браузера.