Php 简单数组查找

Php 简单数组查找,php,wordpress,Php,Wordpress,我有一个数组 当我执行时:print\r($persons)我得到: ( [0] => 30131 [1] => 29763 ) 这两个五位数的数字是CPT中两个帖子的ID,称为people 如何遍历数组并打印每篇文章的标题 我最好的猜测没有任何结果: foreach( $persons as $person ): $title = get_the_title( $person->ID );

我有一个数组 当我执行时:
print\r($persons)
我得到:

(
[0] => 30131
[1] => 29763
)
这两个五位数的数字是CPT中两个帖子的ID,称为people

如何遍历数组并打印每篇文章的标题

我最好的猜测没有任何结果:

            foreach( $persons as $person ):
                $title = get_the_title( $person->ID );
                $peopleout .= $title . ', ' ;
            endforeach;
            echo $peopleout

从第一个代码片段判断,循环中的
$person
是一个值,而不是一个对象

这意味着您应该将
$title=
行更改为:

$title = get_the_title($person);
此外,您当前将在字符串末尾添加一个额外的逗号。为了解决这个问题,我将把标题添加到一个数组中,然后
内爆
该数组以回显值。看起来是这样的

$peopleout = [];
foreach( $persons as $person ):
    $peopleout[] = get_the_title($person);
endforeach;
echo implode(", ", $peopleout);

从第一个代码片段判断,循环中的
$person
是一个值,而不是一个对象

这意味着您应该将
$title=
行更改为:

$title = get_the_title($person);
此外,您当前将在字符串末尾添加一个额外的逗号。为了解决这个问题,我将把标题添加到一个数组中,然后
内爆
该数组以回显值。看起来是这样的

$peopleout = [];
foreach( $persons as $person ):
    $peopleout[] = get_the_title($person);
endforeach;
echo implode(", ", $peopleout);

$person
不是对象,因此请保持它的简单性,因为它包含ID

$title = get_the_title($person);
只是为了好玩,你可以把这一切都当作一句台词

echo implode(', ', array_map(fn($id) => get_the_title($id), $persons));

$person
不是对象,因此请保持它的简单性,因为它包含ID

$title = get_the_title($person);
只是为了好玩,你可以把这一切都当作一句台词

echo implode(', ', array_map(fn($id) => get_the_title($id), $persons));

从您的第一段代码判断,它应该是
获取标题($person)
<在这种情况下,code>$person将不是对象,因此
$person->ID
将不正确。除此之外,您的代码看起来是正确的。从您的第一个代码片段判断,它应该是
获取标题($person)
<在这种情况下,code>$person将不是对象,因此
$person->ID
将不正确。除此之外,你的代码看起来是正确的。谢谢你的脾气暴躁!回答得很好,你也回答了我的下一个问题。干杯。@RichardU很高兴我能帮忙!谢谢你,坏脾气!回答得很好,你也回答了我的下一个问题。干杯。@RichardU很高兴我能帮忙!