php - 如何在 PHP 中删除变量的双引号以进行 SQL 查询

标签 php mysql sql

我想做这个查询

$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/

相关文章:

SQL:计算所有值的总和*和*仅匹配条件的值的总和

sql - 重建数据库中的所有索引

sql - Bigquery - UNION ALL 具有不同参数的相同查询

php - 如何在 Magento 中获取订单的完成日期

php - Laravel 是否具有一对零或一的 Eloquent 关系?

php - 为什么我的 PHP 脚本间歇性地无法通过 FTP 上传文件?

mysql - 大型结果集的数据传输缓慢

php - laravel 4.2 对复杂查询进行分页

php - 使用自定义元键和元值扩展 wc_get_orders()

php - X-Cart 支付问题 - 模糊的错误信息