[ Kusur @ 28.05.2006. 23:10 ] @
Pozdrav svima, Ova funkcija obeležava deo teksta, ali ja nikako da je nateram da mi to i uradi. Može li neko da mi pomogne da upotrebim ovu funkciju? Hvala vam unapred. Code: <?php //highlight a string part function phpdigHighlight($value='',$string='') { if ($value) { // start extra multi-byte regex processing due to http://bugs.php.net/bug.php?id=25953 // this extra regex processing tries to highlight word, WORD, and Word spelling variants $front = mb_eregi_replace("[(](.*)[)][(](.*)[)][(](.*)[)]","\\1",$value); $back = mb_eregi_replace("[(](.*)[)][(](.*)[)][(](.*)[)]","\\3",$value); $mid_value1 = mb_eregi_replace("[(](.*)[)][(](.*)[)][(](.*)[)]","\\2",$value); $mid_value2 = mb_strtoupper($mid_value1); $mid_words1 = explode("|",$mid_value1); $mid_words2 = explode("|",$mid_value2); $mid_words3 = $mid_words1; foreach ($mid_words2 as $val_words2) { if (!in_array($val_words2,$mid_words1)) { $mid_words1[] = $val_words2; } } foreach ($mid_words3 as $val_words3) { $val_words3 = mb_strtoupper(mb_substr($val_words3,0,1)).mb_substr($val_words3,1); while (mb_eregi("([ ]([^ ]+))",$val_words3,$regs3)) { $val_words3 = mb_ereg_replace($regs3[1],"?_?".mb_strtoupper(mb_substr($regs3[2],0,1)).mb_substr($regs3[2],1),$val_words3); } $val_words3 = mb_ereg_replace("[?][_][?]"," ",$val_words3); if (!in_array($val_words3,$mid_words1)) { $mid_words1[] = $val_words3; } } $middle = implode("|",$mid_words1); $value = "(".$front.")(".$middle.")(".$back.")"; // end extra multi-byte regex processing due to http://bugs.php.net/bug.php?id=25953 //$string = @mb_eregi_replace($value,"\\1<^#_>\\2</_#^>\\3",@mb_eregi_replace($value,"\\1<^#_>\\2</_#^>\\3",$string)); $string = @mb_eregi_replace($value,"\\1<^#_>\\2</_#^>\\3",$string); $string = str_replace("^#_","span class=\"phpdigHighlight\"",str_replace("_#^","span",$string)); return $string; } else { return $string; } } ?> Stil koji je upotrebljen u funkciji Code: <style type="text/css"> <!-- .phpdigHighlight { font-weight: bold; } --> </style> |