За последние 24 часа нас посетил 62991 программист и 1743 робота. Сейчас ищет 901 программист ...

foreach ограничение на вывод

Тема в разделе "PHP для новичков", создана пользователем Golovastik, 29 янв 2011.

  1. Golovastik

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

    С нами с:
    14 июл 2010
    Сообщения:
    193
    Симпатии:
    0
    Как через цикл foreach вывести не весь массив а например с 1 по 2 элемент?
    Если например имеем такой массив.

    PHP:
    1.  
    2. $a = array( //Объявлени массива
    3. "green"  => "Зелёный",
    4. "yellow" => "жёлтый",
    5. "white"  => "белый",
    6. "black"  => "Чёрный",
    7. "blue"   => "Синий",
    8. );
    9.  
     
  2. Chushkin

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

    С нами с:
    17 дек 2010
    Сообщения:
    1.062
    Симпатии:
    91
    Адрес:
    Мещёра, Центр, Болото N3
    А чем
    $i = 1;
    foreach($a as $v)
    {
    $i++; if($i > 2) break;
    ....
    не устраивает?
     
  3. Golovastik

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

    С нами с:
    14 июл 2010
    Сообщения:
    193
    Симпатии:
    0
    Да, можно вот так сделать.
    PHP:
    1.  
    2. $i = 0;
    3. foreach($a as $key =>$one){
    4. $i++;
    5. if($i >3) break;
    6. printf("%s - %s ",$key,$one);
    7. echo "\n";
    8. }
    9.  
    Какие варианты лучше есть?
     
  4. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    foreach(array_slice($a, 0, 2) as $one)
     
  5. iliavlad

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

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    чем for не угодил?