爆炸字符串并添加一个数字? PHP

时间:2016-07-12 14:54:36

标签: php explode

我真的完成了这件事。我的问题如下:

代码:

<?php
$highest = 0;
$string = "a.1";

$array = explode(".",$string);
$highest = $array[1];

$final = "secound value is: ".$highest++;

echo $final;
?>

我想要的只是在$ string中添加一些内容。因此,它应该回应2.然而它回声1。

怎么了?

5 个答案:

答案 0 :(得分:4)

使用预增量:

$final = "secound value is: ".++$highest;

更多信息:Incrementing/Decrementing Operators

答案 1 :(得分:1)

尝试以下代码

<?php
$highest = 0;
$string = "a.1";

$array = explode(".",$string);
$highest = $array[1];

$final = "secound value is: ". ++$highest;

echo $final;
?>

原因是,$highest++是后增量。只有在使用后才会增加值。 ++$highest预先增量会先增加值然后再使用

答案 2 :(得分:1)

你正在做一个后期增量。如果您进行预增量,结果将得到2。这是你想要的吗?

$final = "secound value is: ".++$highest;

答案 3 :(得分:1)

只是提出一个开箱即用的答案。你可以节省爆炸和你可能不需要的数组。

$highest = substr($str, 2) + 1;

答案 4 :(得分:0)

预增量和后增量之间存在差异。

pre-increment-(++$highest)
   At first increase the value by one then executes the statement.
post-increment-($highest++)
   At first executes the statement then increase the value by one.

所以在这种情况下你必须使用预增量。然后在增加值后执行行。

试试这段代码:

<?php
$highest = 0;
$string = "a.1";

$array = explode(".",$string);
$highest = $array[1];

$final = "secound value is: ".++$highest;

echo $final;
?>