Php 如何在字符串中声明字符串

Php 如何在字符串中声明字符串,php,mysql,database,syntax,Php,Mysql,Database,Syntax,我是一个编程新手,我有一个PHP代码,需要连接到数据库。 我有这样一句话: $where = 'module = "Card"'; $arrDateInfo = $objQuery->select($col, $table, $where); $where = "module = 'Card'"; $arrDateInfo = $objQuery->select($col, $table, $where); 但是,此部分“module=“Card”不正确。我只想获取模块为“卡”的

我是一个编程新手,我有一个PHP代码,需要连接到数据库。 我有这样一句话:

$where = 'module = "Card"';
$arrDateInfo = $objQuery->select($col, $table, $where);
$where = "module = 'Card'";
$arrDateInfo = $objQuery->select($col, $table, $where);

但是,此部分“module=“Card”不正确。我只想获取模块为“卡”的数据。为模块_类型创建另一个表不是一个选项。我在任何地方都找不到如何在较长的字符串中声明字符串。请帮忙

根据您使用的数据库,您需要在where子句中的字符串周围使用单引号。我建议交换使用的引号,如下所示:

$where = 'module = "Card"';
$arrDateInfo = $objQuery->select($col, $table, $where);
$where = "module = 'Card'";
$arrDateInfo = $objQuery->select($col, $table, $where);

$where
很可能需要关联数组

试试这个:

$where = array(
    'module' => 'Card'
);

不过,除非您告诉我们使用的是什么DB库,否则如果无法在文档中查找该库的函数,我们将无法知道它需要什么。

这是EC Cube中定义的SC_Query_Ex::getSingletonInstance()函数的一部分。事实上,我对这些条款不太熟悉,很抱歉我没有包括这些。您对给定的代码有什么问题?在哪方面是“不对的”?“module=”Card“是错误的
$where=”module=”Card“=
$where=“模块='Card'”
Fabrizio:虽然PHP也这样处理,但数据库却不同。它可以像MySQL中编写的那样工作。如果是MSSQL,则不能使用双引号标识字符串。谢谢!这是一个很好的选择,但我用“module='Card'”修复了我的问题,外部是双引号,内部是单引号。无论如何,我投了你一票。