有一个php gallery代码,可从图像目录创建画廊。

单击图像时,它具有超链接以显示图像的较大预览。 我需要更改超链接以将其定向到我网站上的其他页面,但是我可以在其中将文件扩展名保留在该文件夹中,例如myimage.png

为了使我的链接正常工作,需要从myimage中删除.png

示例:定义我的链接时,它是这样的:

mysitepage.html?myiframe=myothersitepage.html%3Fmyimage

因此,在代码中,我将链接的这一部分定义为:

**$link_page** = '../mysitepage.html?myiframe=myothersitepage.html%3F';

在图像名称下面的代码中,定义为$ k

所以在原始代码中我更改了这一行:

$imgl .= "< div class=\"img_thumb\" >< a href=\"$k\">

读书:

$imgl .= "< div class=\"img_thumb\" >< a href=\"**$link_page**$k\">

这将返回链接: mysitepage.html?myiframe=myothersitepage.html%3Fmyimage.png

同样,我无法弄清楚如何摆脱该链接中的.png。

请帮忙。

===============>>#1 票数:3 已采纳

在使用扩展名之前,用PHP中的空字符串替换扩展名:

$k = str_ireplace('.png', '', $k);

如果要在客户端执行此操作,请使用jQuery解决方案:

$(function() {
    $('.img_thumb a').each(function() {
        var link = $(this).attr('href').replace(/\.png$/i, '');
        $(this).attr('href', link);
    });
});

如果要替换所有扩展名:

$k = preg_replace('/\.[a-z]+$/i', '', $k);

和jQuery:

$(function() {
    $('.img_thumb a').each(function() {
        var link = $(this).attr('href').replace(/\.[a-z]+$/i, '');
        $(this).attr('href', link);
    });
});

如果您在多个地方(前面没有提到)使用$ k,则还可以内联执行replace:

imgl .= "<div class=\"img_thumb\">
    <a href=\"$link_page".str_ireplace('.png', '', $k)."\">
        <img src=\"gallery.php?thumb=$k\" alt=\"$alt\" title=\"$alt\" />
    </a>
</div>";

===============>>#2 票数:0

而不是使用str_replace()附加$k附加$k并删除'.png'

$imgl .= "< div class=\"img_thumb\" >< a href=\"**$link_page**" . str_replace('.png', '', $k) . "\">";

  ask by Mahogan translate from so

未解决问题?本站智能推荐:

1回复

css会在这种特定情况下应用吗?

请原谅我对所有事情前端开发的无知 - 但我想知道我是否有一个针对图像的风格,然后在任意时间后用户将图像插入内容编辑器(即图像是在页面渲染后很长一段时间内引入页面) - css样式是否适用于此图像? 还是“为时已晚”?
1回复

在这种情况下,元素选择中不允许使用文本

我创建了一个论坛,学生必须填写自己的毕业年份。 如注释所示,当我验证文件时,下面的行会产生错误,“在此上下文中,元素select中不允许使用文本”。 我需要在select标记中命名为“ year”,因此可以使用post数组获取年份。 如何解决此验证错误?
1回复

在这种情况下,&(&符号)符号意味着什么?

我是php和mysql的新手。 我在youtube上关注phpacademy的教程。 有一个部分是表单数据,但是每个遵循教程(包括我自己)的人都有未定义的索引错误。 我用& (&符号)符号修复它。 但它在以下情况下做了什么? 为什么将$符号放在$前面会停止错误? 它和@是一样
2回复

在这种特定情况下,数据将被覆盖

我是JS和HTML的新手,我想了解很多事情,因此,如果有人可以帮助和解释它,那就太好了。 这是我的片段。 由于某种原因,每当我在jquery函数中调用create_Countdown()函数时,它都会在所有空白页面上生成。 我假设所有其他代码由于某种原因而被删除。 奇怪的是,如
1回复

删除文件扩展名和文件名

我使用此代码删除了我网站上的.php文件扩展名 这可以将我的网址从example.com/contact/contact.php更改为example.com/contact/contact,但我希望该网址在其所在文件夹后没有文件名。我希望它看起来像例如example.com/contac
2回复

如何在这种情况下基于php创建全局函数?

我有一个if()代码会很长,其中一些共享一些常见的html代码。 我认为更好的方法是在if条件下调用每个html问题。 看我的代码,例如。 如果$fruit='apple' ,我想回显html代码问题1,3,5。 我应该如何使这些问题成为全局函数?
3回复

在这种情况下是否可以具有可为空的外键?

我正在尝试使用竞赛表的外键创建“ teams”表,但是如何将外键设置为nullable?
8回复

在这种情况下使用CSS或Jquery有什么区别

我正在创建一个菜单栏,使用Photoshop中设计的2个图像,一个图像正常,一个图像处于悬停效果。 我已经看到我可以使用css和JQuery来创建悬停效果,我发现CSS更容易使用,例如: 在悬停时只是更改图像,而jquery代码有点长,我相信 如果你们中的任何人都能告诉我在这
1回复

为什么在这种情况下,PHP imagettftext函数不起作用?

谁能告诉我为什么我要创建验证码时不能使用imagettftext函数吗? 它可以很好地处理图像字符串,但是字体大小很小,所以我必须使用imagettftext ... Wamp是问题吗? 谢谢你的时间! PHP代码(到目前为止): Index.php:
2回复

从URL中删除文件扩展名,例如.php或.html

我想从我的网站的网址中删除文件的任何扩展名。 例如:www.example.ml/dash/logins/sign.php 到:www.example / dash / logins / sign / 我做了很多谷歌搜索,但是没有一个答案对我有用。 我认为它不起作用,因为在lo