将正斜杠插入新字符串

时间:2015-03-29 13:00:54

标签: php

我想要一个看起来像'1234'的字符串数组,并为每个字符串创建一个新的stings数组,看起来像'1/2/3/4 /'

我在基本级别的php并且如果有人能指出我正确的方向,请努力解决这个问题。这就是我所在的地方:

<?php

        $mylist = array ('1234','2345','3456','4567','5678','6789');

        $newlist = array();

        while ($results = ($mylist) !== false)

            {
                print_r($mylist[0] . '\/' . [1] . '\/' . [2] . '\/' . [3] . '\/');

                $newlist[] = $results;

        echo $newlist;

            }

    ?>

2 个答案:

答案 0 :(得分:0)

使用 walk_array 修改每个数组元素,同时通过应用 regular expression 替换字符串中的每个数字(\d preg_replace 功能:

<?php
$mylist = array ('1234','2345','3456','4567','5678','6789');

array_walk($mylist, function(&$value, $key){
    $value = preg_replace('/(\d)/', "$1/", $value);
});

或者,如果您真的想要一个新阵列,可以使用 array_map

<?php
$mylist = array ('1234','2345','3456','4567','5678','6789');

$newlist = array_map(function($value){
    return preg_replace('/(\d)/', "$1/", $value);
}, $mylist);

答案 1 :(得分:0)

上面回复的混搭使得这个有效。非常感谢:

<?php
function my_function($value)
{
    return implode('/', str_split($value));
}
    $a = array(1234, 2345, 3456);   
    print_r(array_map("my_function",$a));
?>