重置'foreach'循环中的变量

时间:2017-01-15 08:10:55

标签: php

由于我的foreach循环中有很多变量,如果我可以立即重置所有变量而不是:

 $variable_one = ''; // Reset to: It is blank for each loop
 $variable_two = '';
 ...
 $variable_hundred = '';

2 个答案:

答案 0 :(得分:1)

如果我是你并且在循环中将这些变量设置为某个值,我会使用数组:

$arr = ['first value', 'second value','hundred value'];

然后,您可以在循环中通过索引访问所需内容,因此不使用:

$variable_one

您将使用:

$arr[0]

现在你想重置它们,所以你可以像这样使用array_map():

$arr = array_map(function($val){ return '';}, $arr);

答案 1 :(得分:0)

如果你的循环中有如此多的变量,你可能应该重构它以使其更简单。如果您确定在循环中包含100个变量是一种方法,可以使用以下表达式:

$variable_one = $variable_two = $variable_hundred = '';

这会在一个很长的行中将每个变量设置为''

另一种选择是在单个函数调用中unset()所有这些变量:

unset($variable_one, $variable_two, $variable_hundred);

但是这不会将它们的值设置为'',而是取消设置变量本身。