类MySQL语句和PHP变量

类MySQL语句和PHP变量,php,mysql,Php,Mysql,我需要我的以下代码来工作 我试图使用一个PHP变量,并向其中添加一个[charlist]通配符语句 有人能帮我弄清楚为什么它不起作用吗 基本上,如果我删除[charlist]通配符,它是可以工作的,但是我需要它来查找PHP变量中的所有字母 我的代码如下 LIKE ''[' $searchWord ']%'' 如果$searchWord是一个数组,请首先对其调用内爆: $listOfCharacters = str_split($searchWord, 1); $implodedString

我需要我的以下代码来工作

我试图使用一个PHP变量,并向其中添加一个[charlist]通配符语句

有人能帮我弄清楚为什么它不起作用吗

基本上,如果我删除[charlist]通配符,它是可以工作的,但是我需要它来查找PHP变量中的所有字母

我的代码如下

LIKE ''[' $searchWord ']%'' 

如果$searchWord是一个数组,请首先对其调用内爆:

$listOfCharacters = str_split($searchWord, 1);
$implodedString = implode(',', $listOfCharacters;
内爆字符串现在是逗号分隔的字符串,而不是数组。PHP本身不会将数组转换为字符串。 然后您可以像这样使用它:

LIKE ''[' $implodedString ']%''

虽然我怀疑在这里使用它时不使用字符串连接。我们是否遗漏了一些代码?

如果$searchWord是一个数组,请首先对其调用内爆:

$listOfCharacters = str_split($searchWord, 1);
$implodedString = implode(',', $listOfCharacters;
内爆字符串现在是逗号分隔的字符串,而不是数组。PHP本身不会将数组转换为字符串。 然后您可以像这样使用它:

LIKE ''[' $implodedString ']%''

虽然我怀疑在这里使用它时不使用字符串连接。我们是否遗漏了一些代码?

要使用字符类,需要使用REGEXP运算符

此外,在字符类之后,需要指示重复运算符。%匹配任何字符串(且仅适用于LIKE),但如果要应用该字符串,使其匹配字符类中包含的任何字母序列,则需要执行以下操作:

$query = '`column` REGEXP "[' . $searchWord  . ']+"';

或者,使用*匹配0或更多。(+为1或更多)

要使用字符类,需要使用REGEXP运算符

此外,在字符类之后,需要指示重复运算符。%匹配任何字符串(且仅适用于LIKE),但如果要应用该字符串,使其匹配字符类中包含的任何字母序列,则需要执行以下操作:

$query = '`column` REGEXP "[' . $searchWord  . ']+"';

或者,使用*匹配0或更多。(+是1或更多)

很好的SQL注入,我要它很好的SQL注入,如果我想让它以下面的方式工作,我会接受它:如果$searchWord=AM,我如何才能得到它,从而显示句子中只有AM的结果?如果我想让它以下面的方式工作,我如何才能做到:如果$searchWord=AM,我如何才能得到它,从而显示句子中只有AM的结果?