我将 Redis 与 PHP 和 phpRedis 连接器一起使用。 当我用阿拉伯语保存一个词时,我无法检索这个词,它返回编码值。
在 redis 中,如果我连接:>redis-cli --raw
这里的例子:
amic:/var/www/core-bitercash$ redis-cli 127.0.0.1:6379> 设置 xx 好的 127.0.0.1:6379> 得到 xx "\xd8\xac\xd9\x8a\xd8\xaf"
amic:/var/www/core-bitercash$ redis-cli --raw 127.0.0.1:6379> 得到 xx ㄉㄋ 127.0.0.1:6379>
是的,它可以工作,但是对于 phpRedis 是行不通的。 是否返回: جيد
保存在redis中的值。
我不知道如何连接 phpRedis lib 的 --raw 选项或 haw 来解码 php 中的文本“جيؔ。
最佳答案
在 Redis 中添加您在问题中发布的 key ,将此代码保存为网络服务器上的 test.php
并在浏览器中打开页面,字符是否正确显示?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
echo $redis->get('xx');
?>
</body>
</html>
如果这不起作用,请在页面开头包含此代码:
<?php ini_set('default_charset', 'utf-8'); ?>
关于Redis阿拉伯语解码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41186185/