1 图像 URL 保存在数据库中(但主服务器上有不同版本):如何动态替换字母以避免图像缩放?

发布于 2024-11-18 11:53:36 字数 546 浏览 1 评论 0原文

情况是这样的:我有一个供应商给了我 1 个仅用于目录的 URL 图像...例如大版本 即:http://www.domain.com/dev/1/1/08973911/l_08973911.jpg 数据库中的此图像 URL 保存到字段中:supplier_reference ... 所以我可以用以下方式调用 img src:

<img src="{$product.supplier_reference|escape:'htmlall':'UTF-8'}" width="150" height="133" />

一切都很好,因为它可以缩放......但我不希望它缩放。 有时,就像在这种情况下,我不需要大版本,但需要这种小 150x133... 我需要的正确网址是: http://www.domain.com/dev/1/1/08973911/s_08973911.jpg 这是s版本。 我怎样才能只替换从数据库中获取的 URL 的那个字母? 非常感谢。

this is the situation: i have a supplier who gives me 1 URL image only for the catalogue...for example the large version
that is: http://www.domain.com/dev/1/1/08973911/l_08973911.jpg
This image URL on database is saved into the field: supplier_reference ...
so i can call the img src with:

<img src="{$product.supplier_reference|escape:'htmlall':'UTF-8'}" width="150" height="133" />

and all is ok 'cause it scales... but i don't want it to scale.
Sometimes, as in this case, i don't need the large version but this kind of small 150x133...
the correct URL i need will be:
http://www.domain.com/dev/1/1/08973911/s_08973911.jpg that is the s version.
How can i do to replace only that letter for the URL taken from the DB?
Thank you very much.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

离旧人 2024-11-25 11:53:36

您似乎正在使用 Smarty。如果是这样,您可以使用 Smarty 的 replace 变量修饰符:

<img src="{$product.supplier_reference|replace:'/l_':'/s_'|escape:'htmlall':'UTF-8'}" 
width="150" height="133" />

It seems that you are using Smarty. If so, you can use Smarty's replace variable modifier:

<img src="{$product.supplier_reference|replace:'/l_':'/s_'|escape:'htmlall':'UTF-8'}" 
width="150" height="133" />
年华零落成诗 2024-11-25 11:53:36
$url = preg_replace('#l(_\w+\.jpg)#', 's\1', $url);
$url = preg_replace('#l(_\w+\.jpg)#', 's\1', $url);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文