我目前正在开发一个带有名称列表的网站。 其中一些名称包含“撇号' ,我想使用它们的名称将其链接到网站。

我想链接到一个网址,例如:example.com/(它们的名称)

然后,我首先将“”替换为“ +”。 因此链接看起来像:example.com/john+doe

但是,如果名称是John'Doe,它将把URL变成example.com/john

并跳过姓氏。

我怎样才能解决这个问题? 我尝试将'\\'等更改为html代码,更改为'等,但似乎没有任何效果。

这是我当前的代码:

$name = $row['name'];
$new_name = str_replace(
    array("'", "'"),
    array(" ", "+"),
    $name
);

echo "<td>" . $name . " <a href='http://www.example.com/name=" . $new_name . "' target='_blank'></a>" . "</td>";

我希望它看起来像什么:

John Doe Johnson ----> http://www.example.com/name=John+Doe+Johnson
John'Doe Johnson ----> http://www.example.com/name=John'Doe+Johnson

它将空格更改为+,但是如何修复撇号? 有谁知道?

===============>>#1 票数:2

echo urlencode("John'Doe Johnson");

返回

John%27Doe+Johnson

===============>>#2 票数:2 已采纳

您应该使用PHP的函数urlencode ,php.net/manual/en/function.urlencode.php。

<?php
$name = $row['name'];
//$urlname = urlencode('John\'Doe Johnson');
$urlname = urlencode($name);
echo "<td>$name<a href='http://www.example.com/name=$urlname' target='_blank'>$name</a></td>";

输出:

<td>John%27Doe+Johnson <a href='http://www.example.com/name=John%27Doe+Johnson' target='_blank'></a></td>

  ask by user2849838 translate from so

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

2回复

无法删除字符串中的撇号以使MySQL查询在C#中工作

我正在一个项目中,在一个字符串类中使用mp3歌曲的元数据。 这些是我要复制到下一个查询的数据(即艺术家,标题等)(要从数据制成的列表中)复制到mySQL数据库中: 代码运行良好(知道成功复制了12行),直到for循环到达包含单引号(')的歌曲为止,然后在给定符号处以语法错误退出。 例
1回复

处理撇号,php和pgsql

对于我的表单,在将它们插入数据库之前,我在每个字段上使用pg_escape_string。 所以我得到的名字是firstname ='O'reilly'。 但是当我尝试将其打印出来时,我得到的是两个撇号。 奥莱利(O'reilly)难道不是只有一个撇号吗? 这不是调试问题,我只是想知
2回复

PHP从字符串替换动态URL

我有一个机器人语音,可以将句子转换为口头的mp3文件。 但是机器人的声音无法发出网址,因此我想过滤网址。 我进入了动态字符串,它看起来像这样:“你好,我叫Jeffrey”,它可以正常工作,但是字符串也可以包含url,看起来像这样:“你好http://wwww.google.nl是一个非常
2回复

如何用撇号转义输入中的撇号

我有一个配置文件页面,在该页面中,我想为大多数用户显示来自数据库的信息,以及一个表单,其中具有当前数据作为具有修改权限的用户的默认值。 如您所见,我尝试使用htmlentities ,它将撇号转换为&#39; htmlentities ,但无效。 像其他的方法addslash
3回复

在撇号前加反斜杠

哪个函数处理在每个撇号前加反斜杠的字符串? 换句话说,我想要那个 返回:
2回复

查找并替换YouTube网址

Ive有一个表格,用户可以在其中将视频添加到配置文件字段。 我想做的是使视频自动播放。 但是我在YouTube网址上苦苦挣扎,我知道大多数用户只会从他们的浏览器复制该网址。 所以我得到了这个 例如,它可以很好地获取url 现在我需要把watch?v=转过来了watch?
1回复

检查URL以替换字符串

我正在尝试通过检查URL是否包含唯一字符串来替换特定页面的标题标签中的文本,然后将标题标签更改为另一个单词。 这是我的代码: 所以我的网站是www.site.com,当用户使用www.site.com/shop/?orderby=date时,我希望将h1标签中的文本替换为'new'。
1回复

可以用插件替换子主题中的字符串吗?

我正在寻找是否有一个插件可以搜索特定文件名(例如:/template-parts/content-home.php)中的字符串,然后将该字符串替换为新值而无需编辑代码本身。 这样做的原因是因为我为一家公司编写了Wordpress主题。 他们希望在前端编辑Vimeo URL,因此不必触摸任
1回复

显示URL链接并使用数组替换变量名称

我真的不知道该怎么办,所以我来这里寻求帮助。 在编写代码时,我可能已经搞砸了,但是我试图使其工作。 基本上,我要获取用户URL,然后使用数组和preg_replace,我希望看到将URL替换为其名称。 我没有很好地解释,所以这是我想要它做的一个例子。 因此,假设用户在主页上。 UR
1回复

通过.htaccess文件将查询字符串替换为'/'[重复]

这个问题已经在这里有了答案 : 友好的URL(mod-rewrite)问题 (1个答案) 5年前关闭。 http://thewebsitedem