免除在PHP中执行部件变量

免除在PHP中执行部件变量,php,variables,escaping,Php,Variables,Escaping,我有一个字符串,它使用以下代码写入.txt文档 $myfile = fopen("SomeFolder/Cards.txt", "w"); $txt = "$CardDetail"; fwrite($myfile, $txt); fclose($myfile); $txt的字符串来自变量$CardDetail 这就是$CardDetail变量的外观 $CardDetail = " <div id='CardContain

我有一个字符串,它使用以下代码写入.txt文档

$myfile = fopen("SomeFolder/Cards.txt", "w");
        $txt = "$CardDetail";
        fwrite($myfile, $txt);
        fclose($myfile); 
$txt
的字符串来自变量
$CardDetail

这就是
$CardDetail
变量的外观

$CardDetail = "

        <div id='CardContain'>
        <iframe id='No' width='364.8' height='220.8' scrolling='no'  frameBorder='0'  src='../Cards/ID/$ID/Iframe2.php'>​</iframe>
        <div id='CardWrapping'>
        <h1 id='Cardtext'><b>CARD ID</b> $ID</h1>
        <h1 id='Cardtext'><b>LAST EDITED</b> $Edited<a id='EditLink' href='../Cards/ID/$ID/Editcard.php'> (edit card)</a></h1>
        <h1 id='Cardtext'><b>DESCRIPTION</b> $Description</h1>
        </div>
        <?php if($KeepVariable == "Exsample"){ echo "<div id='CardStats'><h1 id='Cardtext1'>Standby</h1></div>"; }else{ echo "
        <a href='Selectpayment.php?CardID=$ID'><div id='CardButton'><h1 id='Cardtext1'>Options</h1></div></a> ";} ?>

        </div>
";

我根本不希望任何人理解我在这里试图解释的内容。但简单地说,我需要将该部分字符串从执行中排除。

尝试转义双引号:

$CardDetail = "

    <div id='CardContain'>
    <iframe id='No' width='364.8' height='220.8' scrolling='no'  frameBorder='0'  src='../Cards/ID/$ID/Iframe2.php'>​</iframe>
    <div id='CardWrapping'>
    <h1 id='Cardtext'><b>CARD ID</b> $ID</h1>
    <h1 id='Cardtext'><b>LAST EDITED</b> $Edited<a id='EditLink' href='../Cards/ID/$ID/Editcard.php'> (edit card)</a></h1>
    <h1 id='Cardtext'><b>DESCRIPTION</b> $Description</h1>
    </div>
    <?php if($KeepVariable == \"Exsample\"){ echo \"<div id='CardStats'><h1 id='Cardtext1'>Standby</h1></div>\"; }else{ echo \"
    <a href='Selectpayment.php?CardID=$ID'><div id='CardButton'><h1 id='Cardtext1'>Options</h1></div></a> \";} ?>

    </div>
";
$CardDetail=”
​
卡ID$ID
上次编辑$EDITED
DESCRIPTION$DESCRIPTION
";

通过
\
转义变量,如下所示:

$CardDetail = "

        <div id='CardContain'>
        <iframe id='No' width='364.8' height='220.8' scrolling='no'  frameBorder='0'  src='../Cards/ID/$ID/Iframe2.php'>​</iframe>
        <div id='CardWrapping'>
        <h1 id='Cardtext'><b>CARD ID</b> $ID</h1>
        <h1 id='Cardtext'><b>LAST EDITED</b> $Edited<a id='EditLink' href='../Cards/ID/$ID/Editcard.php'> (edit card)</a></h1>
        <h1 id='Cardtext'><b>DESCRIPTION</b> $Description</h1>
        </div>
        <?php if(\$KeepVariable == \"Exsample\"){ echo \"<div id='CardStats'><h1 id='Cardtext1'>Standby</h1></div>\"; }else{ echo \"
        <a href='Selectpayment.php?CardID=$ID'><div id='CardButton'><h1 id='Cardtext1'>Options</h1></div></a> \";} ?>

        </div>
";
$CardDetail=”
​
卡ID$ID
上次编辑$EDITED
DESCRIPTION$DESCRIPTION
";

因为所有这些文本都在一个变量内,并且执行变量内的所有变量名@GothDow这会停止用文本替换内部变量还是什么都不替换@是的。这不会显示变量的内容,而是显示您所希望的结果。哎呀,我看到您希望在最终输出上显示
$ID
,而不是
$ID
的内容,这是正确的吗?上面的人也用了那些转义的东西来处理变量,但是感谢你的帮助,我看到你接受了另一个答案,但是记住,你不是在转义变量,而是我说的双引号。
$CardDetail = "

        <div id='CardContain'>
        <iframe id='No' width='364.8' height='220.8' scrolling='no'  frameBorder='0'  src='../Cards/ID/$ID/Iframe2.php'>​</iframe>
        <div id='CardWrapping'>
        <h1 id='Cardtext'><b>CARD ID</b> $ID</h1>
        <h1 id='Cardtext'><b>LAST EDITED</b> $Edited<a id='EditLink' href='../Cards/ID/$ID/Editcard.php'> (edit card)</a></h1>
        <h1 id='Cardtext'><b>DESCRIPTION</b> $Description</h1>
        </div>
        <?php if(\$KeepVariable == \"Exsample\"){ echo \"<div id='CardStats'><h1 id='Cardtext1'>Standby</h1></div>\"; }else{ echo \"
        <a href='Selectpayment.php?CardID=$ID'><div id='CardButton'><h1 id='Cardtext1'>Options</h1></div></a> \";} ?>

        </div>
";