XML格式的PHP字符串在缩进时返回解析错误?
我对以下原因感到好奇: 工作时不会出错:XML格式的PHP字符串在缩进时返回解析错误?,php,xml,parsing,Php,Xml,Parsing,我对以下原因感到好奇: 工作时不会出错: $contact_data = <<<STRING <contact> <Group_Tag name="Contact Information"> <field name="First Name">$contact_first_name</field> <field name="Last Name">$contact_last_name
$contact_data = <<<STRING
<contact>
<Group_Tag name="Contact Information">
<field name="First Name">$contact_first_name</field>
<field name="Last Name">$contact_last_name</field>
<field name="Email">$contact_email</field>
</Group_Tag>
</contact>
STRING;
$contact_data = <<<STRING
<contact>
<Group_Tag name="Contact Information">
<field name="First Name">$contact_first_name</field>
<field name="Last Name">$contact_last_name</field>
<field name="Email">$contact_email</field>
</Group_Tag>
</contact>
STRING;
如您所见,唯一的区别是第二种情况是缩进(4个空格),而第一种情况不是。我很好奇为什么…您的字符串分隔符必须出现在第1列中,如下所示:
$contact_data = <<<STRING
<contact>
<Group_Tag name="Contact Information">
<field name="First Name">$contact_first_name</field>
<field name="Last Name">$contact_last_name</field>
<field name="Email">$contact_email</field>
</Group_Tag>
</contact>
STRING;
$contact\u data=基本遗传:终止符必须位于行的开头:
echo <<<EOL
foo
EOL; // ok, terminator in column 0
echo <<<EOL
foo
EOL; // bad, there's whitespace before the terminator
echo
echo <<<EOL
foo
EOL; // ok, terminator in column 0
echo <<<EOL
foo
EOL; // bad, there's whitespace before the terminator