我如何检索在 PHP 上指定关键字的行

How could I retrieve rows specifying a keyword on PHP

这真是初学者提出的一个愚蠢的问题,我的数据库中有一个名为 "stations" 的 table,并且在其上有一个名为 "keywords" 的列。 我需要检索所有包含一个特定关键字的行(比方说 "pizza")。 我试过这个但没有用:

foreach ($stations->result() as $row) 
{       
    foreach ($row->keywords as 'pizza') 
    {  

        <--my code-->
    }
}

如何使用 PHP 检索特定列中包含 "pizza" 的所有行?

您可以 select 使用 find_in_set:

仅解析相关行,而不是在 PHP 中解析它
SELECT *
FROM   stations
WHERE  FIND_IN_SET ('pizza', keywords) > 0

您可以使用 explode() 将列表转换为数组来完成此操作。然后你可以使用 in_array():

foreach ($stations->result() as $row) {               
   if ( in_array('pizza', explode(",", $row->keywords) ) ) {
       <--my code-->
   }
}

explode(",", $row->keywords) 将您的逗号分隔列表转换为数组。

in_array('pizza', $array ) returns TRUE 如果找到披萨,否则 returns FALSE.