欧元(html特殊字符)签到selenium / phpunit?

时间:2011-04-21 07:40:59

标签: php selenium phpunit

我在Windows 7上工作,使用phpunit&硒和Firefox浏览器。

我有这段代码:

$value1 = $this->getText("//div[@id= bla bla");
$this->assertEquals($value1, "\u20AC 1,12");

其中\u20AC应为欧元符号。我还尝试了€€€,但是phpunit一直在发错,期待一些不可能的角色组合。

打印$value1给了我同样奇怪的组合。

有人知道使用方法,检查HTML特殊字符或我应该/可以使用哪个字符集?

1 个答案:

答案 0 :(得分:2)

PHP不支持你尝试使用的\u转义,所以这就是为什么它不起作用。

一种方法是使用:

$euro = html_entity_decode('€');
$this->assertEquals($value1, "$euro 1,12");

请注意,上述内容对于可读性而言非常好,尽管它很冗长且效率低下。

除此之外,你几乎必须计算出原始的UTF字节序列,并且每个字节使用一个\ x转义符。例如,U + 2022的UTF8字节序列可以用PHP表示为"\xE2\x80\xA2"。我相信euro sign would be "\xE2\x82\xAC"