PHP文本到图形笑脸

时间:2011-05-24 06:01:48

标签: php

  

可能重复:
  PHP REGEX: Problem with Smiley :) and :))

如果我总是在;) :-| :-(这样的php页面中使用文本格式,我可以用图形表示吗?在所有出现的页面

3 个答案:

答案 0 :(得分:6)

这样的事情应该有效:

$smileys = array(
    ':)' => 'smile.gif',
    ':(' => 'sad.gif',
    ':D' => 'happy.gif'
);

$ks = array();
$vs = array();

foreach($smileys as $k => $v){
    $ks[] = $k;
    $vs[] = '<img src="' . $v . '" alt="' . $k . '" />';
}

str_replace($ks, $vs, $output); // presuming that you have the whole page output in $output

答案 1 :(得分:5)

您可以构建一个将笑脸转换为HTML图像的功能。像:

function parseSmiley($text){
    // Smiley to image
    $smileys = array(
        ';)' => 'blink.png',
        ':-|' => 'scare.png',
        ':-(' => 'bad.png'
    );

    // Now you need find and replace
    foreach($smileys as $smiley => $img){
        $text = str_replace(    
            $smiley,
            "<img src='smiley/path/{$img}' />",
            $text
        );
    }

    // Now only return it
    return $text;
}

现在运行:

echo parseSmiley('Hello you ;)');

答案 2 :(得分:1)

一种非常简单的方法,就是用<img>标签替换笑脸

function smileyText($content) {
    $smiley = array(':)', ':(' ...);
    $graph = array('<img src="..."/>', '<img src="..."/>', ...);

    return str_replace($smiley, $graph, $content);
}