1

我有一个具有以下值的变量:
1,2,11,17,2
我需要将其转换为:
SER1, SER2, SER11, SER17, SER2
换句话说,我需要在每个数字的左侧填充单词SER
How to done this with PHP?

4

4 回答 4

4

您可以使用正则表达式将每个数字替换为数字前的 SER:preg_replace('/(\d+)/', 'SER$1', '1,2,11,17,2');

于 2012-04-25T15:07:50.650 回答
1

您可以使用array_map遍历数组并添加字符串。

例子:

$array = array(1,2,11,17,2);

$new_array = array_map(function($value) {
    return 'STR' . $value;
}, $array);

var_dump($new_array);

编辑:忽略,我以为您正在使用数组。

于 2012-04-25T15:06:36.577 回答
1

对第一个“SER”使用连接,然后使用替换功能。

$StringVar="SER".$StringVar
$StringVar=str_replace(" ,",", SER",$StringVar) 
于 2012-04-25T15:07:24.217 回答
0

在 array_walk 的示例中,您会看到以下代码:

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");

function test_alter(&$item1, $key, $prefix)
{
    $item1 = "$prefix: $item1";
}

function test_print($item2, $key)
{
    echo "$key. $item2<br />\n";
}

echo "Before ...:\n";
array_walk($fruits, 'test_print');

array_walk($fruits, 'test_alter', 'fruit');
echo "... and after:\n";

array_walk($fruits, 'test_print');
?> 

上面的示例将输出:

Before ...:
d. lemon
a. orange
b. banana
c. apple
... and after:
d. fruit: lemon
a. fruit: orange
b. fruit: banana
c. fruit: apple
于 2012-04-25T15:10:53.757 回答