【发布时间】:2019-04-30 20:12:05
【问题描述】:
我很难理解遗留项目中的这行代码。 phpcs 也将此标记为不允许内联控制结构。我很乐意将其重构为更易于理解的代码。
for ($i = 0, $objectid = ''; isset($query{$i}); $query{$i} > 0 or $query{$i} === '0' ? $objectid .= $query{$i} : false, ++$i);
for ($i = 0, $isStr = !is_string($params[key($params)]); $i < $paramsCount; ++$i, $isStr = !is_string($params[key($params)])) {
for ($i = 0, $fs = array(); $i < count($fields); $fs[$i - 1] = $fields[$i]['value'], ++$i);
for ($i = 0, $records = array(); $i < count($res); $records[$i] = $res[$i], ++$i);
for ($a = 0, $extarr = array(); $a < count($docs); ++$a, $extarr[] = $docs[$a - 1]);
这些行实际上是做什么的,如何使它更具可读性?
【问题讨论】:
-
这些是
for循环,循环主体插入for (;;)语句的第三部分。将那部分移到通常的for (;;) { /*move to here*/ }身体区域,你就回到了可读的领域。您也可以对初始化区域执行相同操作。
标签: php for-loop refactoring readability code-readability