需要帮助在foreach循环中创建多维数组



我正试图在foreach循环中创建一个多维数组,但它的输出方式并不像我想象的那样。

代码:

if ($this->element->variants):
    $i = 0;
    foreach($this->element->variants as $variant):
        foreach($variant->characteristics as $k => $characteristic):
            $char_id = $characteristic->variant_characteristic_id;
            $cat_id = $k;
            $char_name = $characteristic->characteristic_value;
        endforeach;
        foreach($variant->images as $k => $image):
            $images[$i] = array($k => $image);
            $i++;
        endforeach;
    endforeach;
    if($variant->images):
            foreach($images as $image):
                echo '
                    <div class="product-thmb-group">
                        <img id="hikashop_child_image_'.$char_id.'" class="hikashop_child_image" src="' . $this->image->uploadFolder_url . $image->file_path . '" alt="hikashop_child_image_' . $char_id . '"  />
                        <span class="product-thmb-title">'.$char_name.'</span>
                    </div>';
            endforeach;
        endif;
    $images = array_map("unserialize", array_unique(array_map("serialize", $images)));
    echo '<pre>'.print_r($images).'</pre>';
endif;

数组的输出如下所示:

Array ( [0] => Array ( 
            [0] => stdClass Object ( 
                    [file_id] => 621
                    [file_name] => 
                    [file_description] => 
                    [file_path] => zinkcalls_longsleeve_black.png 
                    [file_type] => product 
                    [file_ref_id] => 493 
                    [file_free_download] => 0 
                    [file_ordering] => 0 
                    [file_limit] => 0 
                    )
            ) 
    )                      
  1. 当我在图像上运行foreach循环时,每个$variant的结果都会循环,这不是所需的结果

  2. 尝试访问CCD_ 2不起作用。

我不是一个真正的php专家,所以我对我在这里所做的有点不了解。救命!

尝试这个

$image[0]->file_path

相关内容

  • 没有找到相关文章

最新更新