位置是指什么呢??是指0在字符串中的位置还是指第n个0??前者
$str{$n}=$str{$n}+1;后者
$p=2*$n;
$str{$p}=$str{$p}+1;

解决方案 »

  1.   

    surfchen(冲浪)不是给你正确答案了吗?
      

  2.   

    我还要把字符串重新排成$str="|0|0|0|0|0|0|0|0|0|3|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|"
      

  3.   

    $str="|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|"function return_str($str,$n)
    {
    $n;
    $_s=explode("|",substr($str,1,-1));
    $_s[$n]++;
    $s="|".implode("|",$_s)."|";
    return $s;
    }
    这样可以解决,不过不知道还有没有更高效率的
      

  4.   

    我给出的方法就行~~ 你到底试过了吗??怎么不认真看回答? RPWT噢~~
      

  5.   

    <?php
    $str="|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|";
    $n = 7;
    $ar = split("\|",$str);
    $ar[$n]++;
    $str = join("|",$ar);echo $str;
    ?>
      

  6.   

    to surfchen(冲浪)
    你的方法有一个问题
    如果数大于9怎么办?
    还能用吗?
    数组下标会偏移的
      

  7.   

    to 唠叨:preg_split() 函数使用了 Perl 兼容正则表达式语法,通常是比 split() 更快的替代方案。如果不需要正则表达式的威力,则使用 explode() 更快,这样就不会招致正则表达式引擎的浪费。——————摘自 php manual
      

  8.   

    确实不能用了~ 这样的话只能用explode和implode解决了