用于utf-8字符串的strreplace PHP函数

时间:2015-10-20 08:04:21

标签: php regex utf-8 preg-replace

我想在字符串的特定索引处替换字符。

$this->db->where('hrm_attendance.date_time = "'.$date.'"');

但它没有拿指数,所以不适合我。 我怎么能这么容易地做到这一点?

2 个答案:

答案 0 :(得分:3)

要操作Unicode字符串,您需要使用适当的字符串函数。在这里,您可以使用mb_substr

  

根据字符数执行多字节安全substr()操作。职位从 str 的开头开始计算。第一个角色的位置是0。第二个字符位置是1,依此类推。

示例PHP代码:

$str = "Вася";
$replacement = "н";
$start = 3;
echo mb_substr($str,0,$start-1,"utf8") .
                    $replacement . 
                    mb_substr($str,$start,mb_strlen($str),"utf8");

这会将Вася更改为Ваня,因为第三个符号将被替换为#34;使用$replacement

请参阅IDEONE demo

答案 1 :(得分:-1)

使用php,如果你这样做

  

$ string [1] = $ replacement;

它将替换String中的字符。