是否可以在foreach中增加php变量? 我知道如何通过在外面声明来循环。
我正在寻找类似下面的语法
foreach ($some as $somekey=>$someval; $i++)
{
}
答案 0 :(得分:31)
不,你必须使用
$i = 0;
foreach ($some as $somekey=>$someval) {
//xyz
$i++;
}
答案 1 :(得分:5)
foreach ($some as $somekey=>$someval)
{
$i++;
}
答案 2 :(得分:1)
我知道这是一个旧的,但这些是我的想法。
$some = ['foo', 'bar'];
for($i = 0; $i < count($some); $i++){
echo $some[$i];
}
- 更新 -
$some = ['foo', 'bar'];
$someCounted = count($some);
for($i = 0; $i < $someCounted; $i++){
echo $some[$i];
}
它会实现,首先要找到的是什么 但是你必须增加索引$ i 因此,它不会为您节省任何打字。
答案 3 :(得分:1)
{
$i=1;
foreach( $rows as $row){
$i+=1;
}
}
,但是你必须为$ i预设范围,以便在foreach之后不存在或者最后取消它
$i=1;
foreach( $rows as $row){
$i+=1;
}
unset($i);
,但你应该像leopold写的那样使用循环。
答案 4 :(得分:0)
有没有理由不使用
foreach ($some as $somekey=>$someval)
{
$i++;
}
答案 5 :(得分:0)
foreach ($some as $somekey=>$someval)
{
$i++;
}
答案 6 :(得分:0)
foreach ($some as $somekey=>$someval)
{
$i++;
}
我只是一个变量。即使它曾用于迭代你正在使用的任何项目,它仍然可以像任何其他项目一样进行修改。
答案 7 :(得分:0)
这样就可以了! 请记住,如果要从0开始计数/递增,则必须在foreach循环之前定义$ i = 0.
$i = 0;
foreach ($some as $somekey=>$someval) {
$i++;
}
答案 8 :(得分:0)
$dataArray = array();
$i = 0;
foreach($_POST as $key => $data) {
if (!empty($data['features'])) {
$dataArray[$i]['feature'] = $data['features'];
$dataArray[$i]['top_id'] = $data['top_id'];
$dataArray[$i]['pro_id'] = $data['pro_id'];
}
$i++;
}