我有两个变量一个是字符串包含数字而另一个是数字, 我想将字符串的数字部分增加到第二个数字。
$n ='sh500';
$c = 3;
for($i=$n;$i<$c;$i++)
echo $i.'<br>';
我希望输出如下:
sh500
sh501
sh502
答案 0 :(得分:5)
使用$n++
$n = 'sh500'
。 It works.
$n ='sh500';
$c = 3;
for($i = 0;$i < $c;$i++) {
echo $n++.'<br>';
}
将输出
sh500 <br>
sh501 <br>
sh502 <br>
它甚至在以字母数字字符结尾时起作用,因为php将其转换为字符的ASCII值并添加一个,因此a
将变为b
,依此类推。但这超出了问题的范围:)
答案 1 :(得分:2)
$x="sh500";
$x = substr($x,0,2) . (substr($x,2) + 1);
echo $x;
回显sh501
(适用于任何具有第3个字符的数字的字符串)
答案 2 :(得分:1)
$n = 'sh';
for($i = 500; $i < 503; $i++) {
echo "$n$i\n";
}
答案 3 :(得分:0)
$n="sh50";
for($i=0;$i<10;$i++){
$j=$n.$i;
echo $j."<br>";
}
它回应:
SH500
sh501
sh502
sh503
sh504
sh505
sh506
sh507
sh508
sh509
答案 4 :(得分:0)
$n = 'sh500';
$c = 3;
$sh = substr($n,0,2); // will be "sh"
$number = substr($n,2,5) + 1; // will be "500"
for($i = $number; $i < 504; $i++) {
echo $sh.$i."\n";
}
现场演示:Here
答案 5 :(得分:0)
$x = "sh500";
$s = substr($x, 0, 2);
$n = substr($x, 2);
$c = 3;
for ($i = $n; $i < ($n + $c); $i++)
{
echo $s.$i.'<br>';
}
或另一种简单的方法是......
$n ='sh500';
$c = 3;
for ($i = 0; $i < $c; $i++) {
echo $n++."<br>";
}
<强>输出强>
sh500
sh501
sh502
答案 6 :(得分:0)
如果它总是一个长度为2的字符串,则使用preg_match查找第一个出现的数字。 http://www.php.net/manual/en/function.preg-match.php
$number = intval(substr($n, 2));
$number++;
echo substr($n, 0, 2) . $number;