如何在XML字符串中包含PHP变量

如何在XML字符串中包含PHP变量,php,xml,string,Php,Xml,String,我试图在XML字符串中包含一个PHP变量。它似乎不起作用,有人能看出它有什么问题吗 // Construct contact data in XML format $data = <<<STRING <contact> <Group_Tag name="Contact Information"> <field name="First Name">$firstname</field> <field name="Last Nam

我试图在XML字符串中包含一个PHP变量。它似乎不起作用,有人能看出它有什么问题吗

// Construct contact data in XML format
$data = <<<STRING
<contact>
<Group_Tag name="Contact Information">
<field name="First Name">$firstname</field>
<field name="Last Name">$lastname</field>
<field name="Email">$email</field>
</Group_Tag>
</contact>
<Group_Tag name="Sequences and Tags">
<field name="Contact Tags">Test</field>
<field name="Sequences">*/*3*/*8*/*</field>
</Group_Tag>
</contact>
STRING;

$data = urlencode(urlencode($data));
//以XML格式构造联系人数据
$data=尝试以下方法:

$data = "
 <contact>
    <Group_Tag name=\"Contact Information\">
    <field name=\"First Name\">$firstname</field>
    <field name=\"Last Name\">$lastname</field>
    <field name=\"Email\">$email</field>
    </Group_Tag>
    </contact>
    <Group_Tag name=\"Sequences and Tags\">
    <field name=\"Contact Tags\">Test</field>
    <field name=\"Sequences\">*/*3*/*8*/*</field>
    </Group_Tag>
  </contact>
";

echo $data;
$data=”
$firstname
$lastname
$email
测验
*/*3*/*8*/*
";
回波数据;
这将起作用

<contact>
 <Group_Tag name="Contact Information">
  <field name="First Name">'. $firstname.'</field>
  <field name="Last Name">'. $lastname.'</field>
  <field name="Email">'. $email.'</field>
 </Group_Tag>
</contact>

“.$firstname。”
“.$lastname。”
“.$email。”

在某些情况下,变量包含“&”和“不工作如何?似乎工作正常:。可能提供一些更具体的上下文,验证
$firstname
$lastname
等的值。查看XML的格式不正确。从中间删除标记。这是一个解决方案。。。怎样如果OP的heredoc不起作用,那么切换到多行字符串也不会有帮助。有没有方法调用字符串中的函数<代码>$response->getSomething($arguments)
括号用于调用字符串中的函数<代码>{$response->getSomething($arguments)}
<field name="First Name"><![CDATA['. $firstname.']]></field>