【发布时间】:2014-12-31 15:40:08
【问题描述】:
我正在尝试做一个搜索引擎,我在文本框中写字,例如“Mi”,它会选择并显示“Mike Ross”。但是它不适用于空格。我写"Mike" 得到“Mike Ross”,但是当我写“Mike”时得到“Mike Ross”(没有粗体)。
重音也是如此。 所以我写了“Jo”,结果是“João Carlos”。如果我写“Joa”,结果是“João Carlos”(没有任何粗体部分)。我想在写作时忽略重音,但仍会在结果中显示它们。
这是我在 SELECT 之后的脚本:
while($row = $result->fetch_array()) {
$name = $row['name'];
$array = explode(' ',trim($name));
$array_length = count($array);
for ($i=0; $i<$array_length; $i++ ) {
$letters = substr($array[$i], 0, $q_length);
if (strtoupper($letters) == strtoupper($q)) {
$bold_name = '<strong>'.$letters.'</strong>';
$final_name = preg_replace('~'.$letters.'~i', $bold_name, $array[$i], 1);
$array[$i] = $final_name;
}
array[$i] = array[$i]." ";
}
foreach ($array as $t_name) { echo $t_name;
}
感谢您的帮助!
【问题讨论】: