php重构小函数
php refactoring small function
是否可以将此表达式减少到一行?
echo '<li>';
echo $value['name'];
if ($value['childs']) {
echo '<ul>';
echo $this->arrayToString($value['childs']);
echo '</ul>';
}
echo '</li>';
例如:
echo '<li>' . $value['name'] // what to do if statement? ... ;
绝对有可能:
echo '<li>' . $value['name'] . ($value['childs'] ? '<ul>' . $this->arrayToString($value['childs']) . '</ul>' : '') . '</li>';
但是我真的不推荐。我的可读性会差很多。也许 reather 尝试像这样将一个部分提取到另一个函数:
function printItem($value)
{
echo '<li>' . $value['name'] . $this->printItemChilds($value) . '</li>';
}
function printItemChilds($value)
{
return $value['childs'] ? '<ul>' . $this->arrayToString($value['childs']) . '</ul>' : '';
}
是否可以将此表达式减少到一行?
echo '<li>';
echo $value['name'];
if ($value['childs']) {
echo '<ul>';
echo $this->arrayToString($value['childs']);
echo '</ul>';
}
echo '</li>';
例如:
echo '<li>' . $value['name'] // what to do if statement? ... ;
绝对有可能:
echo '<li>' . $value['name'] . ($value['childs'] ? '<ul>' . $this->arrayToString($value['childs']) . '</ul>' : '') . '</li>';
但是我真的不推荐。我的可读性会差很多。也许 reather 尝试像这样将一个部分提取到另一个函数:
function printItem($value)
{
echo '<li>' . $value['name'] . $this->printItemChilds($value) . '</li>';
}
function printItemChilds($value)
{
return $value['childs'] ? '<ul>' . $this->arrayToString($value['childs']) . '</ul>' : '';
}