-2
<?php $lngtxtQuestionDirection = "In each one of the following questions, 'there' are two statements, viz 1 and 2. These "statements" are followed by two conclusions (i) and (ii). Apply the conclusions to the questions and tick mark the right choice." ?>

<input type="hidden" id="question" value='<?php echo stripslashes($lngtxtQuestionDirection)?> '/>

当我使用 javascript 显示隐藏标签时,会显示以下输出:

In each one of the following questions, 

不显示单引号后的文本。我希望显示整个段落。

4

2 回答 2

2

你不应该得到那种行为。您的字符串文字语法是无效的 PHP(因为您有一个 PHP 字符串文字用"包含未转义"字符的字符分隔。)。您拥有的代码应该在输出任何 HTML 之前引发解析错误。

解析错误:解析错误 - 在第 1 行

为了获得您声称的行为,您需要"通过在字符串中添加前缀来转义字符串中的字符\(并且您必须手动执行此操作,而不是以编程方式执行此操作,因为您自己编写 PHP 而不是生成它来自其他一些代码)。

这会给你你说你得到的(仍然不正确的)行为。要解决这个问题,您需要htmlspecialchars($lngtxtQuestionDirection , ENT_QUOTES),而不是stripslashes

于 2013-07-25T09:15:46.613 回答
-1

使用 取消引用引号\。当外部引号相同时,您不能在内部使用双引号,除非您取消引用它们。

于 2013-07-25T09:17:25.760 回答