我想做这个查询
$month = 'january'; //name of the column
$year = 2015;
$sql_query = 'SELECT "'.$month.'" FROM tbl_inpc WHERE year = "'.$year.'"';
当我打印 $sql_query
时,它显示:
SELECT "january" FROM tbl_inp WHERE year = "2015"
在“”双引号之间,它不起作用,应该是这样的
SELECT january FROM tbl_inp WHERE year = 2015
也许这可能是一些简单而愚蠢的事情,但我的思想被封锁了,一些想法或者我做错了什么?谢谢。
最佳答案
在 php 中,您可以在不退出字符串的情况下在双引号内使用您的变量,然后只需使用反斜杠转义您的引号:
$sql_query = "SELECT \"$month\" FROM tbl_inpc WHERE year = $year";
如果你想格外小心,你也可以将你的变量放在大括号内以确保它被正确评估,如果你有一个数组变量并在其中使用一个键,这特别有用:
$sql_query = "SELECT \"{$month[3]}\" FROM tbl_inpc WHERE year = {$year}";
如果想保留原来的内容,只需要将年份左右的双引号去掉即可:
$sql_query = 'SELECT "'.$month.'" FROM tbl_inpc WHERE year = '.$year;
迟到的笔记:
OP 希望从 $year
和 $month
中删除引号 我的示例演示了如何具体从 $year
中删除它们。 $month
也可以采用相同的方法,但示例显示了如何在每种情况下将变量放在引号内和引号外
关于php - 如何在 PHP 中删除变量的双引号以进行 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34320579/