【问题标题】:PHP function to decode strings with different encodingsPHP函数用于解码具有不同编码的字符串
【发布时间】:2018-09-25 20:31:27
【问题描述】:

我有几个编码类型不同的编码字符串,例如:Zubeh%F6rZubeh%C3%B6r,它们都需要解码为Zubehör。 第一个示例字符串可以使用 PHP 函数 urldecode() 解码,但我发现解码第二个字符串的唯一解决方案是使用 javascript 函数 unescape()。

问题 1:如何使用 PHP 函数解码第二种类型的字符串?

问题 2:如何制作一个 PHP 函数,让我可以传入具有这两种编码类型的文本,并且该函数会自动正确解码文本?

【问题讨论】:

  • 它们都是 URL 编码的,并且 urldecode 应该对它们都进行解码。这个答案是询问相同的两个字符,尽管他们是在 C# 而不是 PHP 中处理它,但它可能仍然提供信息。那里还有一个答案可能可以适应PHP:stackoverflow.com/questions/1221849/url-decoding-confusion

标签: php escaping decoding urldecode


【解决方案1】:

我现在可以写一本关于混乱编码的书了……

Q1:它是双重编码的,从“奇怪”字符的数量可以看出。

Q2:这是一项艰巨的任务。您可以使用 PHP 的一些 mbstring 函数来检查您拥有的编码类型,然后将其全部更改为您想要的。然而,当我没记错时,在正确检测和更改所有内容方面存在一些问题。在过去的一些项目中,这些东西存在一些问题。

一些参考点: https://secure.php.net/manual/de/book.mbstring.php

【讨论】:

    猜你喜欢
    • 2013-04-01
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    • 2014-09-27
    • 2021-04-19
    • 2012-05-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多