gpt4 book ai didi

php - mailto 无法读取的字符 - unicode

转载 作者:可可西里 更新时间:2023-10-31 23:09:21 25 4
gpt4 key购买 nike

我在我的网站中使用 mailto URI 方案通过电子邮件发送当前页面。

问题是我在 mailto 链接中使用印地语作为主题

例子

<a href="mailto:test@gmail.com?subject=मानक हिन्दी">Testing</a>

单击链接时,Outlook(版本 6)打开并显示一些不可读的字符作为主题而不是“मानक हिन्दी”,即我得到“'मठ¾à¤¨à¤• हिनà¥à¦à¥€"

我正在使用 PHP,所以我尝试使用 urlencode、utf8_encode 和其他类似的函数,但没有用。并且页面默认的字符集是UTF-8

当我直接粘贴文本 मानक हिन्दी 时,它有效。

但我需要它作为一个 mailto 链接...有什么解决方案?

最佳答案

不幸的是,这只能在 Outlook 端通过设置选项“允许 UTF-8 支持 mailto: 协议(protocol)”来解决。 (在 2010 年,这是在选项 -> 高级 -> 国际选项下。)

否则,默认情况下,Outlook 将使用用户的特定于区域设置的桌面默认编码(“ANSI”代码页),这绝不是 UTF-8。这使得在 mailto: URL 中使用非 ASCII 字符非常不可靠,以至于实际上无用。 (甚至超过 subject= 的正常不可靠性。)

一般来说,对非 ASCII 字符串进行 URL 编码的想法是正确的:使用像这样的 URI:

<a href="mailto:test@gmail.com?subject=%E0%A4%AE%E0%A4%BE%E0%A4%A8%E0%A4%95%20%E0%A4%B9%E0%A4%BF%E0%A4%A8%E0%A5%8D%E0%A4%A6%E0%A5%80">Testing</a>

比使用原始 Unicode 的 IRI 格式更可靠。然而,这并没有解决 Outlook 问题。

关于php - mailto 无法读取的字符 - unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8082073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com