function ew_Highlight($name, $src, $bkw, $bkwtype, $akw) { $outstr = ""; if (strlen($src) > 0 && (strlen($bkw) > 0 || strlen($akw) > 0)) { $xx = 0; $yy = strpos($src, "<", $xx); if ($yy === FALSE) { $yy = strlen($src); } while ($yy >= 0) { if ($yy > $xx) { $wrksrc = substr($src, $xx, $yy - $xx); $kwstr = trim($bkw); if (strlen($bkw) > 0 && strlen($bkwtype) == 0) { // check for exact phase $kwlist = array($kwstr); // use single array element } else { $kwlist = explode(" ", $kwstr); } if (strlen($akw) > 0) { $kwlist[] = $akw; } $x = 0; ew_GetKeyword($wrksrc, $kwlist, $x, $y, $kw); while ($y >= 0) { $outstr .= substr($wrksrc, $x, $y - $x) . "<span name=\"{$name}\" id=\"{$name}\" class=\"ewHighlightSearch\">" . substr($wrksrc, $y, strlen($kw)) . "</span>"; $x = $y + strlen($kw); ew_GetKeyword($wrksrc, $kwlist, $x, $y, $kw); } $outstr .= substr($wrksrc, $x); $xx += strlen($wrksrc); } if ($xx < strlen($src)) { $yy = strpos($src, ">", $xx); if ($yy !== FALSE) { $outstr .= substr($src, $xx, $yy - $xx + 1); $xx = $yy + 1; $yy = strpos($src, "<", $xx); if ($yy === FALSE) { $yy = strlen($src); } } else { $outstr .= substr($src, $xx); $yy = -1; } } else { $yy = -1; } } } else { $outstr = $src; } return $outstr; }
function ew_Highlight($src, $bkw, $bkwtype, $akw) { $outstr = ""; if (strlen($src) > 0 && (strlen($bkw) > 0 || strlen($akw) > 0)) { $kwstr = $bkw; if (strlen($akw) > 0) { if (strlen($kwstr) > 0) { $kwstr .= " "; } $kwstr .= $akw; } $kwlist = explode(" ", $kwstr); $x = 0; ew_GetKeyword($src, $kwlist, $x, $y, $kw); while ($y >= 0) { $outstr .= substr($src, $x, $y - $x) . "<span name=\"ewHighlightSearch\" id=\"ewHighlightSearch\" class=\"ewHighlightSearch\">" . substr($src, $y, strlen($kw)) . "</span>"; $x = $y + strlen($kw); ew_GetKeyword($src, $kwlist, $x, $y, $kw); } $outstr .= substr($src, $x); } else { $outstr = $src; } return $outstr; }