当$ content包含unicode字符时,以下断言无法正确断言该语句。
$matcher = array('tag' => 'div', 'content' => $value);
$this->assertTag($matcher, $content);
目前,我正在使用assertRegExp绕过它。
$this->assertRegExp('/<div>' . $value . '<\/div>/', $content);
但如果有人能说明如何使assertTag工作,我将不胜感激。谢谢!
P.S。我还应该指出,相同的代码适用于Linux环境,但不适用于Windows。
答案 0 :(得分:0)
您应该可以使用html_entity_decode()
或带有htmlentities()
标志的反ENT_QUOTES
>
$matcher = array('tag' => 'div', 'content' => html_entity_decode($value, ENT_QUOTES));
$this->assertTag($matcher, $content);
或
$matcher = array('tag' => 'div', 'content' => $value, ENT_QUOTES));
$this->assertTag($matcher, htmlentities($content, ENT_QUOTES);