$str="博泰魏玛峰尚";
现要把$str中的 每个字 依次 输出
怎么实现呀,多谢

解决方案 »

  1.   


     function q($v) 
     { 
         $arr1_all = array();$arr2_all = array(); 
        foreach (explode(' ',trim(preg_replace("/w+/",' $0 ',$v))) as $a){ 
            $arr2 = array(); 
            if (preg_match("/^d+$/",$a)) { 
                $arr1 = str_split($a,1); 
                 if ($a<1000){ 
                    $len = count($arr1); 
                     for ($i=0;$i<$len;$i++){ 
                         if ($i!=0) $arr2[] = $arr1[$i-1].$arr1[$i]; 
                     } 
                 } 
             } elseif (preg_match("/w+/",$a)){ 
                 $arr1 = array($a); 
            } else { 
                 $arr1 = str_split($a,3); 
                 $len = count($arr1); 
                for ($i=0;$i<$len;$i++){ 
                    if ($i!=0) $arr2[] = $arr1[$i-1].$arr1[$i]; 
                 } 
             }          $arr1_all = array_merge($arr1_all,$arr1); 
             $arr2_all = array_merge($arr2_all,$arr2); 
         } 
         $arr = array_merge($arr1_all,$arr2_all); 
         return $arr; 
     } 
     print_r(q('外星人入侵 微笑Pasta康熙来了090901绝代商娇17')); 
     print_r(q('外星人入侵')); 
     print_r(q('微笑Pasta')); 
     print_r(q('康熙来了090901')); 
     print_r(q('绝代商娇17')); 看下前辈们写的!
      

  2.   

    楼上的好眼熟啊。
    <?php
    header("Content-Type: text/html; charset=utf-8");
    $str = "博泰魏玛峰尚"; 
    $arr = str_split($str,3);
    print_r($arr);
    //或者用正则
    preg_match_all('/./u',$str,$arr);
    print_r($arr[0]);
    ?>
      

  3.   

    谢谢大家
    可都运行不了这个呀 $str="博泰魏玛峰尚";
    大家再调试下,