我有大约 45 个不同的值需要添加,并且为了避免出现很长的variable + variable + variable
,我正在寻找一种将它们垂直添加以使其更易于阅读的方法。
我唯一能想到的就是将它们加载到数组中,但是有更好的方法吗?
$variable+
$variable+
$variable+
$variable+
将它们全部加载到一个数组中,然后使用array_sum
这很脏,但如果你有一个通用的变量名模式,就像你说的最后 6-10 个字符。然后你可以这样做:
$postfixPatterns = array("xxxxxx", "yyyyyy");
$definedVars = get_defined_vars();
$sums = array_combine($postfixPatterns, array_fill(0, count($postfixPatterns), 0));
foreach ($definedVars as $cVarName => $cVar) {
foreach ($postfixPatterns as $cPattern) {
if (preg_match("/" . preg_quote($cPattern, "/") . "$/", $cVarName)) {
$sums[$cVarName] += $cVar;
}
}
}
// var_dump($sums); --> array('xxxxxx' => sum of xxxxxx,
// 'yyyyyy' => sum of yyyyyy);
当然,首先重构代码以将值存储在数组中会更好!
您也可以使用以下语法:
$sum = $var1;
$sum += $var2;
$sum += $var3;
...