如何在PHP代码中插入表情符号?

时间:2010-05-04 09:54:42

标签: php chat

我有一个用PHP语言编写的Shoutout Box。它没有Smileys支持。如何在其中插入笑脸支持?

6 个答案:

答案 0 :(得分:15)

;)

当天为我工作的一些PHP
function Smilify(&$subject)
{
    $smilies = array(
        ':|'  => 'mellow',
        ':-|' => 'mellow',
        ':-o' => 'ohmy',
        ':-O' => 'ohmy',
        ':o'  => 'ohmy',
        ':O'  => 'ohmy',
        ';)'  => 'wink',
        ';-)' => 'wink',
        ':p'  => 'tongue',
        ':-p' => 'tongue',
        ':P'  => 'tongue',
        ':-P' => 'tongue',
        ':D'  => 'biggrin',
        ':-D' => 'biggrin',
        '8)'  => 'cool',
        '8-)' => 'cool',
        ':)'  => 'smile',
        ':-)' => 'smile',
        ':('  => 'sad',
        ':-(' => 'sad',
    );

    $sizes = array(
        'biggrin' => 18,
        'cool' => 20,
        'haha' => 20,
        'mellow' => 20,
        'ohmy' => 20,
        'sad' => 20,
        'smile' => 18,
        'tongue' => 20,
        'wink' => 20,
    );

    $replace = array();
    foreach ($smilies as $smiley => $imgName)
    {
        $size = $sizes[$imgName];
        array_push($replace, '<img src="imgs/'.$imgName.'.gif" alt="'.$smiley.'" width="'.$size.'" height="'.$size.'" />');
    }
    $subject = str_replace(array_keys($smilies), $replace, $subject);
}

enter image description here

答案 1 :(得分:7)

您可以这样做:

<?php
echo str_replace(';)', '<img src="path/to/smile_image.gif" title=";)"/>', $message);
?>

答案 2 :(得分:1)

我会使用javascript检查为':-)'之类的组合添加的喊叫,并将其替换为笑脸图像

答案 3 :(得分:1)

我找到了这个,它帮助了我.. http://os.alfajango.com/css-emoticons/

答案 4 :(得分:0)

使用传递字符串创建函数。并替换为一些文本,如下图所示。

function parseString($string ) {
$my_smilies = array(
    ':aln' => '<img src="images/alien1.png" alt="" />',
    ':thk' => '<img src="images/annoyed.png" alt="" />',
    ':ang' => '<img src="images/angel.png" alt="" />',
    ':slp<' => '<img src="images/zzz.png" alt="" />',
    ':blnk' => '<img src="images/blanco.png" alt="" />',
    ':zip' => '<img src="images/zip_it.png" alt="" />',
    ':bor' => '<img src="images/boring.png" alt="" />',

);

return str_replace( array_keys($my_smilies), array_values($my_smilies), $string);

}

答案 5 :(得分:0)

更好地使用笑脸代码,无需使用替换功能。

https://www.w3schools.com/charsets/ref_emoji_smileys.asp

例如:<p>I will display &#128512;</p>

结果:

我将显示?