Переменные из foreach вставить в таблицу в разные столбцы

Тема в разделе "Как сделать...", создана пользователем LLlaMaH, 7 янв 2012.

  1. LLlaMaH

    LLlaMaH Вот он я

    Регистр.:
    1 апр 2009
    Сообщения:
    250
    Симпатии:
    359
    Имеется код.

    PHP:
    <?php foreach ($fields as $id => $field): ?>
    <?php
    if($id=='field_icon_fid'){$myicon=$field->content;}
    if(
    $id=='created'){$mydate=$field->content;}
    if(
    $id=='title'){$mytitle=$field->content;}
    ?>
    <?php 
    endforeach; ?>
    * - $fields: an array of $field objects.

    Возможно ли вставить переменные в разные столбцы таблицы, например, те, которые нечетные - в первый столбец, которые четные - во второй. (Естественно, в приведенном ниже примере данные просто дублируются) :
    Код:
    <tr>
    <td class="td-1">
    <?=$myicon?>
    </td>
    <td class="td-2">
    <?=$mydate?>
    <?=$mytitle?>
    </td>
    <td class="td-3">
    <?=$myicon?>
    </td>
    <td class="td-4">
    <?=$mydate?>
    <?=$mytitle?>
    </td>
    </tr>
     
  2. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    363
    Симпатии:
    117
    PHP:
    <?php
    $i
    =1;
    $oddValue "";
    $notOddValue "";
    foreach(array(
    "x"=>1"y"=>2,'qwe'=>3,'xx'=>4) as $key => $value)
    if( 
    $i++ % 2)
    $oddValue .= $value;
    else
    $notOddValue .= $value;
    ?>
     
    <table>
        <td>
            <tr> <?php echo  $oddValue ;?> </tr> 
              <tr>  <?php echo  $notOddValue  ;?>  </tr>
      <td>
    </table>
     
     
    LLlaMaH нравится это.
  3. LLlaMaH

    LLlaMaH Вот он я

    Регистр.:
    1 апр 2009
    Сообщения:
    250
    Симпатии:
    359
    То ли ночь на дворе и у меня мозг не варит, то ли не в ночи дело :)
    Не получается у меня перенести выше указанный пример на свой случай ((.
     
  4. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    363
    Симпатии:
    117
    переменные из массива выше нельзя разбить на 2 группы ( два столбца ) по 3 штуки, так как используемый массив ассоциативный, а значит в нем имеется лишь по одному используемому значению

    собсно нужно изменить формат данных в массиве $fields, как минимум таким образом чтоб там хранилось 6 значений ( которые собсно и нужно "разбивать" по 2 пары)
    ну и потом с ним уже можно будет играться
    ----
    да и сейчас писать
    if($id=='field_icon_fid'){$myicon=$field->content;}
    а потом ниже
    <?=$myicon?>

    ИМХО нет смысла, так как можно сразу написать <?=$fields['field_icon_fid']?>
    ----
     
    LLlaMaH нравится это.
  5. LLlaMaH

    LLlaMaH Вот он я

    Регистр.:
    1 апр 2009
    Сообщения:
    250
    Симпатии:
    359
    А изложенных выше данных хватит, чтобы помочь "изменить формат" ... совсем не представляю, как это сделать ...
     
  6. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    363
    Симпатии:
    117
    вам нужно "вставить переменные в разные столбцы таблицы, например, те, которые нечетные - в первый столбец, которые четные - во второй. "
    но в приведенном выше коде, в массиве находится лишь 1 пара переменных, т.е. разбить ее на два столбца физически нельзя

    чтоб это можно было сделать, нужно чтоб в том массиве ( или где-то еще ) была 2 пара переменных, а откуда и как берется первая пара ( чтоб можно было добавить 2 ) никто не знает
    или с файла, или с БД, или пользователь в форму вводит .... а потому и непонятно как "изменить формат"

    короче данных (кода ) мало
     
    LLlaMaH нравится это.
  7. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    если не сложно, пример массива $fields предоставьте в студию, а то вслепую как то неудобно ваять скрипт...
     
  8. LLlaMaH

    LLlaMaH Вот он я

    Регистр.:
    1 апр 2009
    Сообщения:
    250
    Симпатии:
    359
    Кажется, получится выкрутиться через две таблицы ...
    <table1><table2>
    Поставлю их в один ряд ... Должно прокатить по дизайну.
    Всем спасибо, кто старался помочь. Вот за что я люблю Нуллед.