我有一個法國網站,我想解析,但遇到轉換(uft-8)HTML到拉丁-1的問題。PHP:從UTF-8 HTML轉換
問題是顯示在下面的PHPUnit測試用例:
class Test extends PHPUnit_Framework_TestCase {
private static function fromHTML($str){
return html_entity_decode($str, ENT_QUOTES, 'UTF-8');
}
public function test1(){
//REMOVE THE SPACE between the '&' and 'nbsp'. SO won't
//let me write it without the space
$strFrom = 'Wanted& nbsp;: les Chasseurs de Tamriel';
$strTo = 'Wanted : les Chasseurs de Tamriel';
$strFrom = self::fromHTML($strFrom);
$this->assertEquals($strTo, $strFrom);
}
public function test2(){
$strFrom = 'Remplacement d’Almalexia';
$strTo = 'Remplacement d’Almalexia';
$strFrom = self::fromHTML($strFrom);
$this->assertEquals($strTo, $strFrom);
}
}
TEST2完成細。 test1似乎因爲空間不正確而失敗,所以當轉換爲ascii時,它會以未知字符( )結尾。
我該如何確保兩項測試都通過?
爲什麼'&'和'nbsp;'之間有空格?那是你正試圖解決的問題嗎? – Nate 2009-08-07 13:57:59
因爲如果我不把這個空間轉換成一個空格,我不能寫空格 – Yacoby 2009-08-07 14:01:37
把它寫成「& nbsp;」。 – Bombe 2009-08-07 15:02:11