donljt2606 2016-08-13 13:17
浏览 35

用数组值替换字符串,并在数组值之前和之前添加一些文本

i need to replace string with array value and add some text after and before array value. i tried to find solution in google and stackoverflow.but i failed. Then I have a string, for example:

$string = "Hello...! :emo01:";

I have an array with Keys and Values, example:

$arr = array(":emo01:"=>"1f325", ":emo02:"=>"1f326", ":emo03:"=>"1f5b1");

and i need to code this function

function my_Function($arr,$string){

}

Would give the return as "Hello...! <img src='http://www.domain.com/1f325.png' />". how to write this 'my_Function' function.

  • 写回答

1条回答 默认 最新

  • dongzhi4498 2016-08-13 13:29
    关注

    Solution work on general case.

    $string = "Hello...! :emo01:";
    $string2 = "Hello...! :emo01::emo02:";
    
    $arr = array(":emo01:"=>"1f325", ":emo02:"=>"1f326", ":emo03:"=>"1f5b1");
    
    
    function my_Function($arr, $string){
    
        $arrNewArray = [];
    
        foreach($arr as $key => $value ) {
            $arrNewArray[$key] = '<img src="http://yourdomain.com/'. $value .'.png" />';
        }
    
        return str_replace(array_keys($arrNewArray), $arrNewArray, $string);
    
    }
    
    echo my_Function($arr, $string);
    echo my_Function($arr, $string2);
    
    评论

报告相同问题?

悬赏问题

  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算