【问题标题】:Specify Image Height and Width in php string在 php 字符串中指定图像高度和宽度
【发布时间】:2012-05-22 07:47:06
【问题描述】:

我有一个链接图像,我需要为它指定由 php 字符串生成的高度和宽度 html 属性。我已经研究过使用 getimagesize 但它看起来不像我需要的。我目前正在使用社交引擎。

这是调用图片链接的字符串。

<?php echo $this->htmlLink($item->getHref(), $this->itemPhoto($item, 'null'), array('class' => '')) ?>

输出像<a href="#"><img src="#" class="null"/></a>这样的html

我需要修改 php 以创建指定为 110px x 110px 的图像 即<a href="#"><img src="#" class="null" width="110" height="110"/></a>

谁能给我一个如何编写字符串的例子?

【问题讨论】:

  • 您正在使用框架中的函数。你用的是什么框架?
  • 同意。你使用 Mike 哪个框架?
  • 我已经编辑了我的问题并添加了框架

标签: php html image socialengine


【解决方案1】:

你必须使用这个:

<?php echo $this->htmlLink(
    $item->getHref(), 
    $this->itemPhoto(
        $item, 
        'null', 
        null, 
        array('width' => '110px', 'height' => '110px')), 
    array('class' => '')
) ?>

即在itemPhoto函数中添加第四个参数数组。

Socialengine 是 Zend 框架的扩展。您应该尝试查看itemPhotohtmlLink 等函数的定义,以便自定义它们。例如 itemPhoto 可以在这里找到 - \application\modules\Core\View\Helper\ItemPhoto.php

【讨论】:

  • 通过!!!如果可能的话,+1000 代表。您的解决方案效果很好。既然我知道在哪里看,我也会看一下这些功能。感谢一百万萨尔曼
【解决方案2】:

最后一个参数是用来做那个的,不是吗?

$this->htmlLink(
  $item->getHref(), 
  $this->itemPhoto($item, '', '', array('width' => 110, 'height' => 110)),
  array('class' => '')
);

【讨论】:

  • 不完全是,这增加了链接属性的高度和宽度,而不是图像。
  • @MikeM 那么itemPhoto 方法呢?
  • @MikeM 你使用的框架好像不是开源的,所以不看源码很难判断。
  • 我相信它是基于 zend 框架的......社交引擎在扩展方面已经不仅仅是麻烦了。
  • @MikeM OK,搜索一下,结果出来了。检查我的编辑。
【解决方案3】:

方法一: 只需为 null 类添加样式

<?php echo $this->htmlLink($item->getHref(), $this->itemPhoto($item, 'null'), array('class' => '')) ?>

作为:

.null {
  height: 110px;
  width: 110px;
}

方法二: 或者您可以将内联样式属性传递为:

<?php echo $this->htmlLink($item->getHref(), $this->itemPhoto($item, 'null'), array('class' => '', 'style' => 'height: 110px; width: 110px')) ?>

【讨论】:

  • 您的方法 2 看起来只是在工作,由于某种原因,它正在将样式属性添加到链接 html 而不是图像 html。
  • 我已经有了图片的 css 尺寸。我正在尝试遵循 pagespeed 见解来进一步优化我的网站。一项性能建议是通过更改 html 来提供缩放图像。
  • 好的,@xdazz 修改后的解决方案怎么样,行得通吗?我没有找到这个 itemPhoto() 方法的文档。
  • 不,不幸的是仍然没有运气。再次感谢您的帮助@Vishal
【解决方案4】:

我看不到函数 htmlLink() 背后的内容,但我想由于您传递的那些元素的名称,您可以编写。

echo '<a href="'.$item->getHref().'"><img src="'.$this->itemPhoto($item, 'null').'" class="null" width="110" height="110"/></a>';

但是以太发布那个函数或者只是尝试和错误!

【讨论】:

  • 我认为这是我的问题,我自己似乎无法深入了解 htmlLink() 背后的功能。谢谢你的帮助
  • 欢迎,尝试深入了解该框架的类,上面的代码只是一种解决方法。
  • 我会这样做的。尽管我无法完成我的目标,但我仍然学到了一些新东西。再次感谢您的帮助@systrue
  • 不知道你的 php 级别,但这有助于获得一个概览,因为框架一开始可能会令人困惑。 tizag.com/phpT
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-08
  • 2011-11-26
  • 2010-11-19
  • 1970-01-01
  • 1970-01-01
  • 2011-09-24
相关资源
最近更新 更多