假设我们有以下数组:
Array ( [0] => 123456 [1] => Rothmans Blue [2] => 40 [3] => RB44 [4] => 1 )
我想重新打印这个数组,第[4]个键有一个额外的+1,如下所示:
Array ( [0] => 123456 [1] => Rothmans Blue [2] => 40 [3] => RB44 [4] => 2 )
然后再说:
Array ( [0] => 123456 [1] => Rothmans Blue [2] => 40 [3] => RB44 [4] => 3 )
编辑:下面给出的解决方案有效,但是,我的代码没有增加第4个键:
$filew = 'databases/stocktakemain.csv';
$getfilecont = file_get_contents($filew);
$writes = explode(",", $getfilecont);
++$writes[4];
这段代码有问题吗?通过爆炸创建数组时这不适用吗?
答案 0 :(得分:0)
您可以使用end($array)
函数并获取最后一个元素,然后添加。
答案 1 :(得分:0)
在代码的最后,你可以放 数组[4] ==数组[4] + 1;
答案 2 :(得分:0)
你可以使用++来增加你的第四个数组值
<?php
$array[0] = 123456;
$array[1] = 'Rothmans Blue';
$array[2] = 40;
$array[3] = 'RB44';
$array[4] = 1;
echo ++$array[4] . "<br>\n";
echo ++$array[4] . "<br>\n";
echo ++$array[4] . "<br>\n";
?>
答案 3 :(得分:0)
这将打印出10个数组,最后一个键是递增数字,更改$ max以使其更大/更小。
$max = 10;
for( $i=1; $i<=$max; $i++ ) {
print_r( array(
123456,
'Rothmans Blue',
40,
'RB44',
$i
));
}
答案 4 :(得分:0)
在这种情况下,您实际上并不需要声明键值,因为PHP认为数组中的值的索引是其键。
如果要打印值,可以尝试这样的操作,然后递增:
$myArray = array(123456, "Rothmans Blue", 40, "RB44", 1);
for ($i= 0; $i < 3; $i++)
{
foreach ($myArray as $key => $value)
{
print $key . " : " . $value;
if ($key == 4)
{
print "\n";
$myArray[$key] += 1; // Make sure to modify the original array, not the one you passed in as it is passed by reference.
}
}
}
如果要增加然后打印,请将print语句移动到foreach循环的底部。