Как раздуть выпадающий список из многомерного массива в php

#php #arrays

#php #массивы

Вопрос:

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

Вот массив, который я пытаюсь раздуть в выпадающем списке. В этом единственном массиве 22 массива, которые я пытаюсь раздуть.

  array(22) {
     [0] => array(4) {
         [0] => string(26) "Black Angled Buckle Jacket"
         [1] => string(6) "036890"
         [2] => int(48503) 
         [3] => array(4) {
             [0] => string(83) "http://thebestofcards.com/wp-content/uploads/2016/09/product-man-6a-uai-480x640.jpg"
             [1] => int(480) 
             [2] => int(640) 
             [3] => bool(false)
         }
     }
     ...
 }
 

Это код

 $result = count($data);

var_dump($data);
for ($row = 0; $row < $result; $row  ) {
    //echo "<p><b>Row number $row</b></p>";
    echo '<select name="productddl">';
    //echo "<ul>";
    for ($col = 0; $col < 3; $col  ) {
        echo '<option value="'.$data[$row][$col][0].'">'.$data[$row][$col][1].'</option>'
        //echo "<li>".$data[$row][$col]."</li>";
    }
    echo '</select>';;
    //echo "</ul>";
}
 

Я просто хочу получить название продукта в массиве в выпадающем списке. Кто-нибудь может помочь?

Спасибо

Комментарии:

1. Структура этого массива ужасна. Откуда берутся данные? Что именно вы пытаетесь сделать? Добавить заголовки в выпадающий список?

2. он поступает из продуктов wocommerce. Я пишу код для извлечения списка продуктов woocommerce в выпадающем списке

Ответ №1:

это не так сложно, массив не слишком вложен, это просто список продуктов, единственная проблема заключается в том, что вместо использования assoc и более значимых ключей у вас есть числа.

 echo '<select name="productddl">';
foreach ($data as $row) {
    echo '<option value="', $row[1], '">', $row[0] , '</option>';
}
echo '</select>';