我有一个PHP脚本,它使用参数调用python脚本,并从python中返回带有print
的多个字符串。
如果python返回unicode字符,它们将无法在浏览器中正确显示 如果PHP通过参数将unicode字符发送给python,它就会中断。
Python代码:
# -*- coding: UTF8 -*-
from lxml import html
hparser = html.HTMLParser(encoding="utf-8")
tree = html.parse(url, hparser)
## stuff here..
a = a_el.text.encode("utf-8")
b = b_el.text.encode("utf-8")
print [a, b]
PHP代码:
header("Content-type: text/html; charset=UTF-8");
exec('python script.py "unicode æøå"', $input_ar);
foreach ($input_ar as $value) {
preg_match_all("/'([^']+)'/", $value, $value_ar);
//A
$a = $value_ar[1][0];
//B
$b = $value_ar[1][1];
echo $a."<br>";
echo $b."<br>";
}
浏览器中的输出或者给我\xc3\c85
一些东西或黑钻石形状的问号
我尝试过使用utf8_encode($string)
,但它没有用。
我也没有运气做过一点研究 我希望能够从PHP发送/接收unicode字符到python。