[英]PHP define() function not work with unicode utf-8 characters
我使用php define();
函数并从MySQL数据库输入值,如下所示:
$options = DataAccess::FETCHLOAD("SELECT sign FROM " . OPTIONS . " WHERE 1");
define('_SIGN_',$options['0']['sign']);
echo _SIGN_;
现在在ouuput是:
?????????????????????
没有定义:
echo $options['0']['sign'];
输出工作:
تواصل معنا
与所有的MySQL结果工作utf-8
输出中,但是当我在没有确定我的结果工作utf-8
如何解决这个问题?
这应该为您工作:
您是否还在*.php
文件中设置了字符集?
<html>
<head>
<title>Testing</title>
<meta charset="UTF-8">
</head>
<body>
<?php
$options['0']['sign'] = "تواصل معنا";
define('_SIGN_',$options['0']['sign']);
echo _SIGN_;
?>
</body>
</html>
评论后更新:
$options = DataAccess::FETCHLOAD("SELECT sign FROM " . OPTIONS . " WHERE 1");
echo $options['0']['sign']; //You said that you here the output is "تواصل معنا"
define('_SIGN_',$options['0']['sign']);
echo _SIGN_; //And here the output is "?????????????????????"
但这对您有用:
define('_SIGN_',"تواصل معنا");
echo _SIGN_; //And here the output is "تواصل معنا"
这不可能! 这不是地方性的!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.