Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Obeležavanje dela teksta (highlight a string part)

[es] :: PHP :: Obeležavanje dela teksta (highlight a string part)

[ Pregleda: 2160 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Kusur
Grafički dizajner
Beograd

Član broj: 2485
Poruke: 208
..taman-bg.customer.sbb.co.yu.



Profil

icon Obeležavanje dela teksta (highlight a string part)28.05.2006. u 23:10 - pre 217 meseci
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>

Kusur
 
Odgovor na temu

[es] :: PHP :: Obeležavanje dela teksta (highlight a string part)

[ Pregleda: 2160 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.