PHP mb_convert_encoding 不适用于查询

PHP mb_convert_encoding doesn't work on query

提问人:Robertnicolas 提问时间:2/18/2019 最后编辑:Robertnicolas 更新时间:2/18/2019 访问量:113

问:

我正在尝试生成查询字符串。字符显示为不同的查询。

PHP版本:7.3.2

功能

$D->query = '';

if ($this->query('x')) {

    $D->query = mb_convert_encoding($this->query('x'), 'UTF-8');
}

#Синодал 结果:

#%D0%A1%D0%B8%D0%BD%D0%BE%D0%B4%D0%B0%D0%BB
php mysql utf-8 字符编码 mb-convert-encoding

评论

0赞 Rick James 2/19/2019
向我们展示您开始的文本。“查询字符串”不明确;请详细说明。通常,您永远不需要mb_convert*

答:

1赞 ASertacAkkaya 2/18/2019 #1

字符串是 urlencoded,您需要先简单地进行 urldecode,从那里您可以进行任何编码更改:

$decoded = urldecode($this->query(“x”));
$D->query = mb_convert_encoding($decoded, “utf-8”);