Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP7:Unicode转义语法不';我不喜欢单引号_Php_String_Unicode_Php 7 - Fatal编程技术网

PHP7:Unicode转义语法不';我不喜欢单引号

PHP7:Unicode转义语法不';我不喜欢单引号,php,string,unicode,php-7,Php,String,Unicode,Php 7,每当字符串设置为单引号时,unicode不会被解码,但当设置为双引号时,unicode会被解码 如何将单引号设置的字符串也解码 PHP 输出 \u{1F6BB}单引号字符串的要点是它们不支持转义字符 政府说得很清楚: 反斜杠的所有其他实例都将被视为文字反斜杠:这意味着您可能使用的其他转义序列(如\r或\n)将按指定的文字输出,而不是具有任何特殊含义 为什么不直接使用双引号呢?unicode语法对从数据库中提取的数据不起作用,但在使用双引号回显相同的数据时起作用。所以用双引号包装输出?重新包装字符

每当字符串设置为单引号时,unicode不会被解码,但当设置为双引号时,unicode会被解码

如何将单引号设置的字符串也解码

PHP

输出


\u{1F6BB}单引号字符串的要点是它们不支持转义字符

政府说得很清楚:

反斜杠的所有其他实例都将被视为文字反斜杠:这意味着您可能使用的其他转义序列(如\r或\n)将按指定的文字输出,而不是具有任何特殊含义


为什么不直接使用双引号呢?unicode语法对从数据库中提取的数据不起作用,但在使用双引号回显相同的数据时起作用。所以用双引号包装输出?重新包装字符串?@SaidbakR在这里你知道我如何让它起作用吗?我正在从mysql数据库中检索Unicode,但它们没有被解码。@MeghGandhi:这是一个完全不同的问题。为什么数据库中有编码字符串?这几乎总是一个非常糟糕的主意。数据库不支持unicode,我也无法更改它,所以使用编码字符串是唯一剩下的选项。@MeghGandhi:那么你应该使用与编码字符串所用内容相反的内容。并确保处理包含反斜杠的用户输入。我不能完全理解您的意思吗?
$poo = '\u{1F6BB}';
echo $poo;
$poo = "\u{1F6BB}";
echo $poo;