Php 如何清除数组?
在循环中,我希望在循环的每次迭代结束时清除一个数组:Php 如何清除数组?,php,Php,在循环中,我希望在循环的每次迭代结束时清除一个数组: $tab = array(); ... for($i=1; $i<=5; $i++) { if ($regle_delegation_oper[$i] != "" && $regle_delegation_cond[$i] != "") { $tab['lien_id'] = $lien_id; $tab['regle_deleg_oper'] = $regle_deleg
$tab = array();
...
for($i=1; $i<=5; $i++)
{
if ($regle_delegation_oper[$i] != "" && $regle_delegation_cond[$i] != "")
{
$tab['lien_id'] = $lien_id;
$tab['regle_deleg_oper'] = $regle_delegation_oper[$i];
$tab['regle_deleg_cond'] = $regle_delegation_cond[$i];
$rd->ajouter($tab);
// here I want to clear the $tab array
}
}
那么,如何清除$tab数组呢?您不能执行以下操作:
$tab = array();
或
可以在循环开始时初始化数组:
...
for($i=1; $i<=5; $i++)
{
$tab = array(); // This will clear the $tab array at each iteration
if ($regle_delegation_oper[$i] != "" && $regle_delegation_cond[$i] != "")
{
$tab['lien_id'] = $lien_id;
$tab['regle_deleg_oper'] = $regle_delegation_oper[$i];
$tab['regle_deleg_cond'] = $regle_delegation_cond[$i];
$rd->ajouter($tab);
}
}
所以我不是在循环之前声明它,而是在循环内部?你在两个地方都声明它。第二次只是将$tab设置回空数组。
unset($tab);
...
for($i=1; $i<=5; $i++)
{
$tab = array(); // This will clear the $tab array at each iteration
if ($regle_delegation_oper[$i] != "" && $regle_delegation_cond[$i] != "")
{
$tab['lien_id'] = $lien_id;
$tab['regle_deleg_oper'] = $regle_delegation_oper[$i];
$tab['regle_deleg_cond'] = $regle_delegation_cond[$i];
$rd->ajouter($tab);
}
}
$tab = array();
for($i=1; $i<=5; $i++){
if ($regle_delegation_oper[$i] != "" && $regle_delegation_cond[$i] != "")
{
$tab['lien_id'] = $lien_id;
$tab['regle_deleg_oper'] = $regle_delegation_oper[$i];
$tab['regle_deleg_cond'] = $regle_delegation_cond[$i];
$rd->ajouter($tab);
unset($tab);
}
}