PHP双引号和单引号引起麻烦

Posted

技术标签:

【中文标题】PHP双引号和单引号引起麻烦【英文标题】:PHP double and single quotes causing trouble 【发布时间】:2014-06-28 18:43:32 【问题描述】:

我有一个 jQuery 脚本: $('[id="a"][f-id="0"]').val(<?php echo $a; ?>) 现在我想把这个脚本放在一个 PHP 变量 $output 中,并通过 PHP 函数返回它。 但是脚本中的那些引号会导致很多语法错误。 任何人都可以让它运行吗?

【问题讨论】:

你试过用反斜杠转义字符吗? 什么语法错误? javascript 还是 php 的?看起来您还需要将其更改为:.val('<?php echo $a; ?>')。或使用 json_encode:.val(<?php echo json_encode($a); ?>) 【参考方案1】:

如果我理解正确,您想将问题中的 Javascript 字符串放入 PHP 变量中。这看起来像这样:

$myVar = "$('[id=\"a\"][f-id=\"0\"]').val($a)";

双引号前的反斜杠 () 是转义字符,让 PHP 知道您希望实际字符 " 在字符串中,否则 PHP 认为您要结束字符串。

请注意,$a 不需要在此上下文中回显,因为您不是在输出 $a,而是将其包含在字符串中。

【讨论】:

【参考方案2】:

您只需在引号 (\) 前加上一个反斜杠。这将告诉 PHP 编译器下一个符号(" 或 ')必须是文字而不是字符串的结尾。

如果你不想加反斜杠,你需要“\”。

【讨论】:

以上是关于PHP双引号和单引号引起麻烦的主要内容,如果未能解决你的问题,请参考以下文章

PHP

php笔试题

PHP面试题

PHP面试题

PHP中的双引号和单引号的应用

PHP经典面试题目汇总(上篇)