Jump to content
php.lv forumi

grafiskie smaiļi


aika

Recommended Posts

ir uzpeldējis uzdevums nodrošināt :) aizstāšanu ar grafisko ģīmi.

mēģinot pielāgot esošus kodus, esmu ticis tiktālu ka sadzenu smaiļus masīvā:

  function loadSmileyTheme()
 {
   $theme = file("smileys/theme.txt");
   $result = array();
   foreach($theme as $line)
   {
     $line = trim($line);
     if (preg_match("/^#.*/",$line))
       continue;
     else if (preg_match("/([a-z_\-0-9\.]+)(.*)$/i",$line,$res))
     {
       $smiley_file = 'smileys/'.$res[1];
       $smiley_str = trim($res[2])."\n";
       $smiley_str = str_replace("\n", "", $smiley_str);
       $smiley_str = str_replace("\t", " ", $smiley_str);
       $smiley_str_tab = explode(" ", $smiley_str);
       foreach($smiley_str_tab as $str)
         $smiley_result[$smiley_file][] = htmlspecialchars(addslashes($str));
     }
   }

 }

theme.txt pielikumā

būtībā 1 rinda tajā izskatās sekojoši: icon_smile.gif :smile: :-) :)

 

tālāk esmu iesprūdis, jo mehānismu kā stringu apstrādāt ar iegūto masīvu, nevaru izpīpēt.

Labprāt uzlausīšu arī citas idejas, kā izpildīt esošo uzdevumu.

paldies jau iepriekš!

Link to comment
Share on other sites

Nu taa, smailiju masiivs izskatiitos shaadi:

 

$smailiju_masiivs[0]['izskats'] = ":)";

$smailiju_masiivs[0]['celjs_uz_realo_smailiju'],$'] = "img/smailijs.jpg";

 

foreach(smailiju_masiivs as smailijs){
$str = str_replace(smailijs['izskats'],"<img src=\"" . smailijs['celjs_uz_realo_smailiju'] . "\" alt=\"".smailijs['izskats']."\"/>",$str);
}

 

Kaut kā tā...

 

protams, ja katram smailija ir vēl iespējams savādāks alias, tad bik bik sarežģītāk...

Edited by briedis
Link to comment
Share on other sites

iespējams var darīt tā..

icon_smile.gif|:smile: :-) :)

explodot | atdalīs bildes linku no smailiju izskatiem*...

un tad explodot smialiju izskatusa ar " " un iegūt array kuru foreachot.. pateikt viegli uzrakstīt grūti..

Link to comment
Share on other sites

izskatās pieteikami ērti!

bet manis ievietotais kods jau nesavāc minēto masīvu, vne?! nekas, pie tā var piestrādāt!

 

P.S. starpcitu, kam vajadzīgs $ šajā

['celjs_uz_realo_smailiju'],$']

sintaksē?

 

Drukas kļūda.. Es neemsu tur rakstījis pareizā sintaksē, bet gan tādā kā pseido

Link to comment
Share on other sites

starpcitu - pa šo laiku sagūglēju vēl vienu variantu, as izsakāms ar 1 rindu:

 

$texts=str_replace(array_keys($smilies), array_values($smilies), $texts);

 

kur

$smilies=array(    ':)' => "<img src='images/smile.gif' />", ':(' => "<img src='images/sad.gif'   />", ...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...