양식이있는 HTML/PHP5 페이지가 있고 게시되면 폼 입력을 데이터로 사용하여 XML 파일을 만듭니다.PHP DOMDocument with åäö (UTF-8)
하지만 모두 åäö은 (는) utf8_encode()
을 사용한 것과 같습니다. 나는 utf8_decode()
을 사용할 수 없다. 왜냐하면 XML 파일을 전송하는 "서비스"가 UTF-8이 아니라고 불평하기 때문이다.
파서가 실패했습니다. 이유 : 2 : 파서 오류 : 입력이 적절하지 않습니다. UTF-8, 인코딩을 나타냅니다! 바이트 : 0xE5라면에는 0x73이 0x61 0x2E
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Blabla></title>
</head>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<name>åäö</name>
내가 대신 htmlentities()
와 CDATA
로 데이터를 전송, M b_convert_encoding()
을 시도하고 php.ini 파일에 default_charset = "utf-8"
을 변경하지만가 생각처럼 아무것도 작동했다.
어떻게해야합니까?
데이터가 UTF-8 인 경우 출력용으로 UTF-8을 사용하지 않는 이유는 무엇입니까? – Gumbo
그랬지만, htmlentities() 메소드의 표준 문자 세트가 ISO-8859-1이고, UTF-8 데이터에 htmlentities()를 사용했을 때 åäö가 ä ¤ ¶로 변형되었습니다. 데이터에서 htmlentities()를 사용하는 이유는 <>가있는 웹 페이지에 htmlentities()를 표시하는 것입니다. –