php-单引号与双引号的混合使用
可能只是问题中的一个错误,但此行有两个分号:php-单引号与双引号的混合使用,php,double,quotes,mysql-escape-string,Php,Double,Quotes,Mysql Escape String,可能只是问题中的一个错误,但此行有两个分号: <?php $query .= "WHERE id='" . $subject_id ."' "; ?> 如果您跳过连接,这应该可以工作 $query .= "WHERE id='" . $subject_id ."' ";; 在PHP中,在双引号中,单引号是文字,变量是展开的 您编写它的另一种方式也应该可以,但它的代码比需要的多。在双引号中使用单引号是因为您还需要将字符串传递给MySQL。PHP
<?php
$query .= "WHERE id='" . $subject_id ."' ";
?>
如果您跳过连接,这应该可以工作
$query .= "WHERE id='" . $subject_id ."' ";;
在PHP中,在双引号中,单引号是文字,变量是展开的
您编写它的另一种方式也应该可以,但它的代码比需要的多。在双引号中使用单引号是因为您还需要将字符串传递给MySQL。PHP和MySQL都使用单引号和双引号作为字符串分隔符 比较两行:
$query .= "WHERE id='$subject_id' ";
这是PHP字符串中的MySQL字符串(分隔符是单引号)(分隔符是双引号)
这次没有MySQL字符串,只有一个PHP字符串
假设列
id
是一个数字字段,您将使用后一个变量 你的问题看起来不错。请在执行时打印$query
字符串,并将其张贴在此处。尝试回显您的$query并用结果更新您的问题。我第一次编写该字符串时出现了错误,经过多次搜索,我找到了另一种方法,该方法有效,但我不知道其有效的原因分号是笔误。我必须粘贴两次。而且这也不是错误发生的原因。发生错误的原因是单引号和双引号。我想知道为什么?如果列id
是数字,那么$query.=“其中id=$subject\u id”代码>应该有效。如果你能解释你发现这个答案有什么错,那么否决票会更有帮助。否决票是什么?这就是问题所在,尽管它不起作用。没有单引号是不行的。这就是我想知道的!!id已经是一个数字字段。。但正如我所认为的那样,它不应该是一串。它应该没有引号!对,对。您需要的唯一引号是PHP字符串(包含SQL查询)的引号?($query.=“WHERE id=”.$subject_id.“;)
$query .= "WHERE id='$subject_id' ";
$query .= "WHERE id='" . $subject_id ."' ";
$query .= "WHERE id=" . $subject_id ." ";