关于php:未定义变量输出


Undefined variable Output

我从wordpress主题中以调试模式收到以下错误。 可能很容易解决,但我不知道该怎么办。

UNDEFINED VARIABLE: OUTPUT .... line 34 ($output variable)

1
2
3
4
5
6
7
$categories = get_the_category();
if($categories) {
    foreach($categories as $category) {
        $output .= 'term_id ).'" class="btn-standard-blog" title="' . esc_attr( sprintf( __("View all posts in %s" ), $category->name ) ) . '">'.$category->cat_name.'';
    }
}
echo $output;


$output仅在满足IF语句的条件时存在。 否则,您将尝试使用尚未定义的变量。 在您的情况下尤其如此,因为循环的第一次迭代还会尝试将值添加到不存在的值,因此此错误将始终在此代码中发生。

您可以通过以下方法解决此问题:声明该变量不带任何值,然后在适当时进行修改。

1
2
3
4
5
6
7
8
9
<?php
$output = '';
$categories = get_the_category();
    if($categories) {
        foreach($categories as $category) {
            $output .= 'term_id ).'" class="btn-standard-blog" title="' . esc_attr( sprintf( __("View all posts in %s" ), $category->name ) ) . '">'.$category->cat_name.'';
    }
}
echo $output; ?>