如何用一些值增加变量并对结果重新排序
How to increment a variable with some values and reorder the result
我想用这些值增加这个变量:
$Variable = "AAAA1 VALUE1; \
BBBB1 VALUE1; \
CCCC1 VALUE1";
所以我做了这个简单的代码:
for($i=1; $i<3; $i++) {
$Variable = "AAAA$i VALUE$i; \
BBBB$i VALUE$i; \
CCCC$i VALUE$i";
}
我得到了这 2 个输出结果:
AAAA1 VALUE1
BBBB1 VALUE1
CCCC1 VALUE1
AAAA2 VALUE2
BBBB2 VALUE2
CCCC2 VALUE2
但我想要的是获得这样的完整结果:
AAAA1 VALUE1
AAAA2 VALUE2
BBBB1 VALUE1
BBBB2 VALUE2
CCCC1 VALUE1
CCCC2 VALUE2
打击代码:
"AAAA$i VALUE$i;
BBBB$i VALUE$i;
CCCC$i VALUE$i";
您想在每一行中进行迭代!
$variable = explode("\n",$Variable);
现在 $variable
是可迭代的,或者使用数组:
$variable=[
"AAAA%input1% VALUE%input1%;",
"BBBB%input1% VALUE%input1%;",
"CCCC%input1% VALUE%input1%;",
];
$final_string="";
foreach($variable as $var){
for($i=1; $i<3; $i++) {
$final_string. = str_replace("%input1%",$i,$var) ."\n";
}
}
echo $final_string;
您可以将字符串设为数组并逐项循环,然后在类似于您的 for 循环中构建字符串。
$Variable = "AAAA VALUE
BBBB VALUE
CCCC VALUE";
$startval = 1;
$endval = 5;
$var = explode("\n", $Variable);
$str = "";
foreach($var as $v){
$temp = explode(" " , $v);
//Loop from startval to endval and build your string
for($i=$startval; $i<=$endval; $i++){
$str .= $temp[0] .$i . " " . $temp[1] .$i. "\n";
}
$str .= "\n"; // add new line
}
echo $str;
输出:
AAAA1 VALUE1
AAAA2 VALUE2
AAAA3 VALUE3
AAAA4 VALUE4
AAAA5 VALUE5
BBBB1 VALUE1
BBBB2 VALUE2
BBBB3 VALUE3
BBBB4 VALUE4
BBBB5 VALUE5
CCCC1 VALUE1
CCCC2 VALUE2
CCCC3 VALUE3
CCCC4 VALUE4
CCCC5 VALUE5
我想用这些值增加这个变量:
$Variable = "AAAA1 VALUE1; \
BBBB1 VALUE1; \
CCCC1 VALUE1";
所以我做了这个简单的代码:
for($i=1; $i<3; $i++) {
$Variable = "AAAA$i VALUE$i; \
BBBB$i VALUE$i; \
CCCC$i VALUE$i";
}
我得到了这 2 个输出结果:
AAAA1 VALUE1
BBBB1 VALUE1
CCCC1 VALUE1
AAAA2 VALUE2
BBBB2 VALUE2
CCCC2 VALUE2
但我想要的是获得这样的完整结果:
AAAA1 VALUE1
AAAA2 VALUE2
BBBB1 VALUE1
BBBB2 VALUE2
CCCC1 VALUE1
CCCC2 VALUE2
打击代码:
"AAAA$i VALUE$i;
BBBB$i VALUE$i;
CCCC$i VALUE$i";
您想在每一行中进行迭代!
$variable = explode("\n",$Variable);
现在 $variable
是可迭代的,或者使用数组:
$variable=[
"AAAA%input1% VALUE%input1%;",
"BBBB%input1% VALUE%input1%;",
"CCCC%input1% VALUE%input1%;",
];
$final_string="";
foreach($variable as $var){
for($i=1; $i<3; $i++) {
$final_string. = str_replace("%input1%",$i,$var) ."\n";
}
}
echo $final_string;
您可以将字符串设为数组并逐项循环,然后在类似于您的 for 循环中构建字符串。
$Variable = "AAAA VALUE
BBBB VALUE
CCCC VALUE";
$startval = 1;
$endval = 5;
$var = explode("\n", $Variable);
$str = "";
foreach($var as $v){
$temp = explode(" " , $v);
//Loop from startval to endval and build your string
for($i=$startval; $i<=$endval; $i++){
$str .= $temp[0] .$i . " " . $temp[1] .$i. "\n";
}
$str .= "\n"; // add new line
}
echo $str;
输出:
AAAA1 VALUE1
AAAA2 VALUE2
AAAA3 VALUE3
AAAA4 VALUE4
AAAA5 VALUE5
BBBB1 VALUE1
BBBB2 VALUE2
BBBB3 VALUE3
BBBB4 VALUE4
BBBB5 VALUE5
CCCC1 VALUE1
CCCC2 VALUE2
CCCC3 VALUE3
CCCC4 VALUE4
CCCC5 VALUE5