php - 在mysql、php中搜索,找到所有包含 'str'的词

标签 php mysql

我要做的是在屏幕上显示表格中所有可能的变化。如果$search = str , 在表格中搜索每个包含“str”的单词。我尝试了很多变体来做到这一点,但还没有成功。怎么了,我可以使用类似 "SELECT * FROM table WHERE * LIKE '[[:<:]]\"$search\"[[:>:]]' " 的东西吗? ?

$string = "SELECT * FROM table

WHERE (column1 = '[[:<:]]\"$search\"[[:>:]]') 
OR (column2 = '[[:<:]]\"$search\"[[:>:]]')
OR (column3 = '[[:<:]]\"$search\"[[:>:]]') 
OR (column4 = '[[:<:]]\"$search\"[[:>:]]')
OR (column6 = '[[:<:]]\"$search\"[[:>:]]')  
OR (column7 = '[[:<:]]\"$search\"[[:>:]]')";

问题:找到所有包含'str'的单词

最佳答案

编辑

首先,获取数据库中包含$str的所有列,如下所示:

"SELECT * FROM your_table WHERE UPPER(your_field) LIKE UPPER('%". $str . "%')";

之后,

解析此结果以找到单词中的 $str

像这样:

$explode = explode($results);

然后你使用 strpos();strstr(); 组合来匹配数组中的 $str

像这样的函数:

函数 getMultiPos($haystack, $needles, $sensitive=true, $offset=0){ foreach($needles 作为 $needle){ $result[$needle] = ($sensitive) ? strpos($haystack, $needle, $offset) : stripos($haystack, $needle, $offset); } 返回 $ 结果; }

Source

关于php - 在mysql、php中搜索,找到所有包含 'str'的词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31923663/

相关文章:

通过传入域帐户/密码,PHP 连接到具有集成安全性的 SQL Server?

php - htmlspecialchars() 导致变量返回空白数据?

php - 在 PHP 中使用带有弯曲文本的 SVG 创建 PDF - 不显示任何文本

php - 从 PHP 调用 MySql 存储过程 (PDO)

php - 从 PDO 准备好的语句中获取 SQL 查询和参数

php - 如何获取设备 token

php - 路由到 View 而不传递变量 - laravel

php - SQL索引性能?

MySQL Workbench 6.0 和 Windows 8 - 无法连接到本地主机上的 MySql?

mysql - 如何按特定顺序对结果进行分组?