警告:substr_count():空子字符串

时间:2016-11-19 19:14:12

标签: php substring substr

我突然发现了很多错误,并说出了#34;空子串"参考第8行

$score3 = substr_count($name_only, $text);

我不知道问题是什么,这是一个搜索功能。是空提交到搜索框吗?

我认为可能是因为我使用JS和HTML进行了更改,因此无法将搜索表单空白或仅用空格提交,但仍然会出现错误。

这是我的PHP,对于知识比我更有知识的人来说,有什么能够成为问题的根源吗?

function search_now($images){
  global $text, $scores, $scores2, $scores3, $do_search;
  $images2 = array();
  foreach ($images as $key => $value) {
    $name_only = $value['name'];
    similar_text($text, $name_only, $score);                        
    $score2 = substr_compare($name_only, $text, 0);
    $score3 = substr_count($name_only, $text);
    if($do_search){
      if($score<20)
      continue;
    }
    $images2[$key] = $value;
    $images2[$key]['score'] = $score;
    $images2[$key]['score2'] = $score2;
    $images2[$key]['score3'] = $score3;
    //$scores[$key] = ($do_search)? $score : $key;
    $scores[$key] = $score;
    $scores2[$key] = $score2;
    $scores3[$key] = $score3;
  }
  return $images2;
}

1 个答案:

答案 0 :(得分:0)

substr_count()的第二个参数为空字符串时,会触发该错误消息。如果你转储$text我想你会发现它是一个空字符串。

不确定您的代码段与其余代码的关系,但您可以在功能中加入检查...

if ($text == '') {
   // handle scoring differently
}