Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 逗号分隔仅适用于前2个foreach项?_Php_Wordpress_Custom Post Type - Fatal编程技术网

Php 逗号分隔仅适用于前2个foreach项?

Php 逗号分隔仅适用于前2个foreach项?,php,wordpress,custom-post-type,Php,Wordpress,Custom Post Type,我创建了一个函数,用于在WordPress中显示自定义帖子类型的分类法,但我确信问题与PHP中的某些内容有关: function portfolio_tax($x) { $terms = get_terms($x); $count = count($terms); $commaCheck = 0; foreach($terms as $term) { echo $term->name; if(!$commaCheck >

我创建了一个函数,用于在WordPress中显示自定义帖子类型的分类法,但我确信问题与PHP中的某些内容有关:

function portfolio_tax($x) {
    $terms = get_terms($x);
    $count = count($terms);
    $commaCheck = 0;
    foreach($terms as $term) {
        echo $term->name;
        if(!$commaCheck >= $count){echo ', ';}
        $commaCheck++;
    }
}
然后,我使用
(在同一页面上的两个不同位置用标记替换类别)将它们显示在公文包详细信息页面上

对于最多2个项目,所有项目似乎都可以正常工作,但如果还有,
将停止显示,如下所示:

标签

海滩,HelloMacro


(当Hello和Macro之间应该有空格时)

因为您的语句。你先检查一下$默认情况下,$commaCheck为0,但随后你提升它。因此,这将是错误的

拆下!在$commaCheck之前或将其放入()中,如下所示:
!($commaCheck>=$count)

(我不知道您需要哪种逻辑。带“!”还是不带“!”。

因为您的声明。您首先检查!$commaCheck,默认为true,因为$commaCheck为0,但随后您将其提升。因此它将为false

删除$commaCheck之前的!或将其放入()中,如下所示:
!($commaCheck>=$count)

(我不知道您需要哪种逻辑。带“!”还是不带“!”。

因为您的声明。您首先检查!$commaCheck,默认为true,因为$commaCheck为0,但随后您将其提升。因此它将为false

删除$commaCheck之前的!或将其放入()中,如下所示:
!($commaCheck>=$count)

(我不知道您需要哪种逻辑。带“!”还是不带“!”。

因为您的声明。您首先检查!$commaCheck,默认为true,因为$commaCheck为0,但随后您将其提升。因此它将为false

删除$commaCheck之前的!或将其放入()中,如下所示:
!($commaCheck>=$count)

(我不知道你需要哪种逻辑。带“!”还是不带。

如果($commaCheck>=$count){echo',';}请删除“!”如果($commaCheck>=$count){echo',';}请删除“!”如果($commaCheck>=$count){echo',;}请删除“!”如果($commaCheck>=$count echo',”,请删除“;}请尝试删除“!”

创建术语名称的映射。然后,您可以从末尾弹出最后一个元素,用逗号将其余元素连接起来,并将弹出的元素重新连接到:

function portfolio_tax($x) {
    $term_names = array_map(function($t){
        return $t -> name;
    }, get_terms($x));

    $last = array_pop($term_names);
    echo implode(',', $term_names) . ' ' . $last;
}

创建术语名称的映射。然后,您可以从末尾弹出最后一个元素,用逗号将其余元素连接起来,并将弹出的元素重新连接到:

function portfolio_tax($x) {
    $term_names = array_map(function($t){
        return $t -> name;
    }, get_terms($x));

    $last = array_pop($term_names);
    echo implode(',', $term_names) . ' ' . $last;
}

创建术语名称的映射。然后,您可以从末尾弹出最后一个元素,用逗号将其余元素连接起来,并将弹出的元素重新连接到:

function portfolio_tax($x) {
    $term_names = array_map(function($t){
        return $t -> name;
    }, get_terms($x));

    $last = array_pop($term_names);
    echo implode(',', $term_names) . ' ' . $last;
}

创建术语名称的映射。然后,您可以从末尾弹出最后一个元素,用逗号将其余元素连接起来,并将弹出的元素重新连接到:

function portfolio_tax($x) {
    $term_names = array_map(function($t){
        return $t -> name;
    }, get_terms($x));

    $last = array_pop($term_names);
    echo implode(',', $term_names) . ' ' . $last;
}
另一种(更简单的)方法是在每个$term(第一个除外)之前而不是之后回显逗号。在这种情况下,您只需要一个而不是两个计数器变量来检查它是否是第一个元素

function portfolio_tax($x) {
    $terms = get_terms($x);
    $commaCheck = 0;
    foreach($terms as $term) {
        if($commaCheck != 0){echo ', ';}
        echo $term->name;
        $commaCheck++;
    }
}
另一种(更简单的)方法是在每个$term(第一个除外)之前而不是之后回显逗号。在这种情况下,您只需要一个而不是两个计数器变量来检查它是否是第一个元素

function portfolio_tax($x) {
    $terms = get_terms($x);
    $commaCheck = 0;
    foreach($terms as $term) {
        if($commaCheck != 0){echo ', ';}
        echo $term->name;
        $commaCheck++;
    }
}
另一种(更简单的)方法是在每个$term(第一个除外)之前而不是之后回显逗号。在这种情况下,您只需要一个而不是两个计数器变量来检查它是否是第一个元素

function portfolio_tax($x) {
    $terms = get_terms($x);
    $commaCheck = 0;
    foreach($terms as $term) {
        if($commaCheck != 0){echo ', ';}
        echo $term->name;
        $commaCheck++;
    }
}
另一种(更简单的)方法是在每个$term(第一个除外)之前而不是之后回显逗号。在这种情况下,您只需要一个而不是两个计数器变量来检查它是否是第一个元素

function portfolio_tax($x) {
    $terms = get_terms($x);
    $commaCheck = 0;
    foreach($terms as $term) {
        if($commaCheck != 0){echo ', ';}
        echo $term->name;
        $commaCheck++;
    }
}


干杯,我需要的是
()
周围缺少的
$commaCheck>=$count
,完全没有找到它们:-)因为有急事。以后别忘了:PDamn,我现在每一项都会得到一个
,它不仅在条件为假时显示,还有什么想法吗?在语句中尝试$count-1谢谢,我需要的是缺少的
()
周围的
$commaCheck>=$count
,完全没有找到它们:-)因为有急事。以后别忘了:PDamn,我现在每一项都会得到一个
,它不仅在条件为假时显示,还有什么想法吗?在语句中尝试$count-1谢谢,我需要的是缺少的
()
周围的
$commaCheck>=$count
,完全没有找到它们:-)因为匆忙。将来别忘了:PDamn,我现在在每一项之后都会得到一个
,它不仅在条件为false时显示,还有什么想法吗?在语句中尝试$count-1谢谢,我需要的是
$commaCheck>=$count
周围缺少的
),因为匆忙而完全错过了它们:-)。将来别忘了:PDamn,我现在在每个项目后都会得到一个
,它不仅在条件为false时显示,还有什么想法吗?在语句中尝试$count-1谢谢,但需要
,Tamás回答正确谢谢,但需要
,Tamás回答正确谢谢,但需要
,Tamás回答正确谢谢,但需要
,Tamás有正确的答案,我会在未来牢记这一点,但是我会继续Tamás的答案,因为这是我所缺少的!我将在未来铭记这一点,但我会接受塔马斯的答案,因为这正是我所缺少的!我将在未来铭记这一点,但我会接受塔马斯的答案,因为这正是我所缺少的!我将在未来铭记这一点,但我会接受塔马斯的答案,因为这正是我所缺少的!