2015-05-08 3 views
1

Я пытаюсь вывести некоторый контент из моей таблицы БД, я успешно сделал запрос, а также код возврата контроллера, но когда я пытаюсь Ouput него, на мой взгляд, то, что я пыталсяPHP массив ошибки преобразования строки

<tr> 
      <?php foreach ($products as $product) { ?> 
      <td> 
    <pre> 
      <?php 
      var_dump($products[$product['product_id']]['manufacturers']); 

        foreach ($products[$product['product_id']]['manufacturers'] as $manufacturer) { 
        echo $manufacturer; 
        } ?> 
      </pre> 
      </td> 
      <?php } ?> 
      </tr> 

ОШИБКА

Примечание: Массив для преобразования строки в C: \ XAMPP \ HTDOCS \ США \ каталог \ вид \ тема \ usadevims \ шаблон \ продукт \ compare.tpl на линии 72ArrayNotice: Array для преобразование строки в C: \ xampp \ htdocs \ usa \ catalog \ view \ theme \ usadevims \ template \ product \ compare.tpl on line 72ArrayNotice: Преобразование массива в строку в C: \ xampp \ htdocs \ usa \ catalog \ view \ theme \ usadevims \ шаблон \ продукт \ compare.tpl на линии 72Array

и здесь var_dump моих переменных

array(3) { 
     [0]=> 
     array(2) { 
     ["name"]=> 
     string(5) "Apple" 
     ["manufacturer_id"]=> 
     string(1) "8" 
     } 
     [1]=> 
     array(2) { 
     ["name"]=> 
     string(3) "HTC" 
     ["manufacturer_id"]=> 
     string(1) "5" 
     } 
     [2]=> 
     array(2) { 
     ["name"]=> 
     string(4) "Sony" 
     ["manufacturer_id"]=> 
     string(2) "10" 
     } 
    } 
+0

это массив $ products или массив $ product? –

ответ

6

ссылки $ производителя на массив. Попробуйте:

echo $manufacturer['name']; 

или

echo $manufacturer['manufacturer_id]; 

Как вы можете видеть на var_dump, ваша переменная $products[$product['product_id']]['manufacturers'] массив состоит из трех массивов. Поэтому каждая итерация вашего цикла присваивает массив переменной $ manufacturer.