【问题标题】:Fastest character replacement in string字符串中最快的字符替换
【发布时间】:2010-08-27 09:15:56
【问题描述】:

我需要替换字符串中的一个字符。

$s1='123456789';
$s2='abcdefghi';

$p=4; // position of char in $s1 to use for replacing (0 is first char)

$s2 = ???? ; // code

最后$s2必须是'abcd5fghi'

最快的方法是什么?

【问题讨论】:

  • 你确定你需要最快的方法吗?只是足够快不适合你?
  • 以最快的方式查看答案有时是最好的方式。

标签: php performance string


【解决方案1】:

如果你只有单字节字符:

$s2[$p] = $s1[$p];

否则,如果是多字节字符,您可能需要使用mb_substr

$s2 = mb_substr($s2, 0, $p).mb_substr($s1, $p, 1).mb_substr($s2, $p+1);

【讨论】:

  • 我学到了一些新东西。感谢您节省了我编写废话长版本的时间。
【解决方案2】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-21
    • 1970-01-01
    • 2017-07-18
    • 1970-01-01
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多