簡體   English   中英

用PHP轉義復雜的字符串

[英]Escaping a complicated string with PHP

我有一個像這樣的字符串:

<form action='php/zoneNotifUnsub.php' id='zoneNotifUnsub' method='POST'>
    <?php
       echo $var;
    ?>
</form>

我想用PHP來回顯它,並使它看起來與上面完全相同。

我從這個開始:

echo '<form action='php/zoneNotifUnsub.php' id='zoneNotifUnsub' method='POST'>
    <?php
       echo $var;
    ?>
</form>';

但是里面的其他單引號引起了我的問題。 如何獲得字符串打印的確切逐字輸出(這樣就不會解析任何變量,也不會運行任何代碼)?

普通轉義如下所示:

echo '<form action=\'php/zoneNotifUnsub.php\' id=\'zoneNotifUnsub\' method=\'POST\'>
    <?php
       echo $var;
    ?>
</form>';

用反斜杠轉義'中的每個字符。 回顧how strings work look in the manual page

您還可以使用看起來更好的HEREDOC Syntax

echo <<<OUT
<form action='php/zoneNotifUnsub.php' id='zoneNotifUnsub' method='POST'>
    <?php
       echo $var;
    ?>
</form>
OUT;

您還可以對要回顯的內容使用雙引號。

因此: '<form action="php/zoneNotifUnsub.php" id="zoneNotifUnsub" method="POST">'; 等等。

嘗試轉義

echo '<form action=\'php/zoneNotifUnsub.php\' id=\'zoneNotifUnsub\' method=\'POST\'>
    <?php
       echo $var;
    ?>
</form>';

在這種情況下,可以使用雙引號:

echo "<form action='php/zoneNotifUnsub.php' id='zoneNotifUnsub' method='POST'>
    <?php
       echo $var;
    ?>
</form>";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM