PHP は、バージョン 5.2 環境で XML を解析するとエラーを報告しますが、通常はバージョン 5.3 で報告されます。

WBOY
リリース: 2016-06-13 13:20:49
オリジナル
1020 人が閲覧しました

PHP は XML を解析し、バージョン 5.2 環境ではエラーを報告しますが、バージョン 5.3 では正常です。
if (isset($_POST['xmldata'])) {
$string="".$_POST['xmldata']."";
$ doc=$xml = new DOMDocument();
$xml->loadXML($string);
...
フォームから XML ファイルを送信すると、ページでエラーが報告されるのはなぜですか?
ページ プロンプト情報:
警告: DOMDocument::loadXML() [domdocument.loadxml]: AttValue: " または ' エンティティ、行: /usr/local/apache2/htdocs/dbmanage/xmlfile で期待されます。 php 126 行目

警告: DOMDocument::loadXML() [domdocument.loadxml]: エンティティの属性構成エラー、行: /usr/local/apache2/htdocs/dbmanage/xmlfile.php 行 2 126

警告: DOMDocument::loadXML() [domdocument.loadxml]: エンティティに行 2 を追加する開始タグの末尾が見つかりませんでした、/usr/local/apache2/htdocs/dbmanage/ の行: 2 xmlfile.php 126 行目

警告: DOMDocument::loadXML() [domdocument.loadxml]: AttValue: " または ' エンティティで予期される、行: /usr/local/apache2/htdocs/dbmanage/ の 3 行目xmlfile.php 126 行目

警告: DOMDocument::loadXML() [domdocument.loadxml]: エンティティの属性構成エラー、行: /usr/local/apache2/htdocs/dbmanage/xmlfile.php の 3 行目126 行目

XML 形式は次のとおりです:









PHP バージョン:
#php -v
PHP 5.2.12 (cli) (ビルド済み) :2012 04 25 21:12:31)

-----解決策---------
var_dump($string); // この文を追加して結果を投稿します。
$xml->loadXML($string);


------解決策------------------
フォームPOSTが出てきましたね? enctype とは何ですか? それとも AJAX によってもたらされたものですか? Content-Type は何を設定しますか? HTTP_RAW_POST_DATA を見てみましょう。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート