douran6443 2015-09-21 09:12
浏览 119
已采纳

在字符串中查找字符串的出现

I am trying to find out whether a string contains any of the strings from a particular table of strings and assigning the string that is found to be a match to a variable and then inserting said variable into a database. However it doesn't seem to be able to find a match even when there clearly is a match. Any help would be appreciated.

This is the code:

$stringToMatch = 'Good Morning';
$string_list = "SELECT string FROM strings";
$resultStringList = mysqli_query($link, $string_list) or   die(mysqli_error($link));
$string_name = "Test";
while ($row = mysqli_fetch_array($resultStringList)) {
if (stristr($StringToMatch, $row)) {
$string_name = $row;
} 
}
mysqli_query($link, "INSERT INTO table (string) VALUES ('$string_name')") or die(mysqli_error($link));

At this point, what would appear in the table is "Test" in the string column. Ideally it should insert the word "Morning" instead which can be found in the table strings

  • 写回答

2条回答 默认 最新

  • dongou6632 2015-09-21 09:17
    关注
    stristr()
    

    Returns all of haystack starting from and including the first occurrence of needle to the end.

    You are fetching array form your query. SO need to pass string to your stristr function to match

     while ($row = mysqli_fetch_array($resultStringList)) {
        if (stristr($StringToMatch, $row['string'])) {// need to pass string instead of array
        $string_name = $row['string'];// here pass string instead if array
        } 
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里