dongshan4316 2013-04-02 16:44
浏览 111
已采纳

试图获得Magento产品图片 - 只获得一张图片

I am trying to get an array of product image urls in Magento 1.7.0.2. Here is my current (slightly convoluted for example) code:

foreach ($_product->getMediaGalleryImages() as $_image) {
    $tmp = array(
        'image' => $this->helper('catalog/image')
                    ->init($this->getProduct(), 'thumbnail', $_image->getFile())
                    ->constrainOnly(true)
                    ->keepAspectRatio(true)
                    ->keepFrame(false)
                    ->resize(800, null),
        'thumb' => $this->helper('catalog/image')
                    ->init($this->getProduct(), 'thumbnail', $_image->getFile())
                    ->constrainOnly(true)
                    ->keepAspectRatio(true)
                    ->keepFrame(false)
                    ->resize(227, null),
        'label' => $this->htmlEscape($this->getImageLabel())
    );

    echo $tmp['image'] . '<br>';

    $all_imgs[] = $tmp;
}

foreach ($all_imgs as $blah) {
    echo $blah['image'] . '<br>';
    echo $blah['thumb'] . '<br>';
    echo $blah['label'] . '<br>';
}

I have two images, a.jpg and b.jpg. In the first foreach I am getting somefolder/a.jpg and somefolder/b.jpg. In the second foreach I am getting somefolder/b.jpg twice.

Somehow a.jpg is being replaced by b.jpg but I can't figure out why. The only thing I can think of is that something is being passed by reference rather than value but if that's the case I can't see where that is happening.

  • 写回答

1条回答 默认 最新

  • dongzhi9574 2013-04-03 06:08
    关注

    Code

    ... = $this->helper('catalog/image')->...

    returns an object, not string. And this object is singleton, that mean it has no instances and data is replaced.

    Try to use

    ... = (string)$this->helper('catalog/image')->...
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题