【发布时间】:2021-08-29 15:37:40
【问题描述】:
我正在用 PHP 编写我的函数来列出帖子类别(只看代码风格,而不是逻辑):
function list_categories() {
// $html = '';
echo '<div class="post-categories post-items__categories">';
echo '<span class="post-categories__title">Categories:</span>';
echo '<ul class="post-categories__list">';
echo '<li class="post-categories__item"><a class="post-categories__link">All categories</a></li>';
$categories = get_categories([
'taxonomy' => 'category',
'type' => 'post',
'orderby' => 'name',
'order' => 'DESC',
'hierarchical' => false,
]);
foreach ($categories as $category) {
$cat_class = ($category->term_id == get_queried_object_id()) ? 'active' : '';
echo '<li class="post-categories__item">
<a class="post-categories__link" href="'.get_category_link($category->term_id).'">'.
$category->name.
'</a>
</li>';
}
echo '</ul></div>';
}
我希望我的标签回显表达式更具可读性,而不仅仅是像这里这样的一行:
echo '<li class="post-categories__item"><a class="post-categories__link">All categories</a></li>';
我在 foreach 循环中使用了新行,但它仍然很难看。 我发现了 heredoc 语法,但我不能在其中调用函数。 你怎么写这种东西?实在不想一行写完
【问题讨论】:
-
似乎heredoc是最好的解决方案,但是我们需要声明额外的变量来存储函数结果。无论如何,我想知道你的方法。
标签: php coding-style