检查特定数组值是否设置为PHP

检查特定数组值是否设置为PHP,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一个新闻项目的滑块,并做一个循环来获取每个项目的帖子信息。工作正常,但我被json返回的一个参数所困扰,我再次循环使用它。$xtras参数返回一些附加值,其中一个是附加的简介文本。我需要检查是否设置了此值,否则我需要返回默认的介绍文本 我遇到的问题是,如果$xtra_values->ID44不存在,我会从上一篇文章中获取介绍文本,而不是那篇文章$post['intro'] $xtras返回stdClass对象,如下所示 stdClass Object ( [id] => 1

我有一个新闻项目的滑块,并做一个循环来获取每个项目的帖子信息。工作正常,但我被json返回的一个参数所困扰,我再次循环使用它。$xtras参数返回一些附加值,其中一个是附加的简介文本。我需要检查是否设置了此值,否则我需要返回默认的介绍文本

我遇到的问题是,如果
$xtra_values->ID44
不存在,我会从上一篇文章中获取介绍文本,而不是那篇文章
$post['intro']

$xtras返回stdClass对象,如下所示

stdClass Object
(
    [id] => 1
    [value] => 38
)
stdClass Object
(
    [id] => 28
    [value] => 1
)
stdClass Object
(
    [id] => 44
    [value] => This is extra intro text
)
这是我的循环

foreach ($post_array as $key=> $posts){

    $xtras  = json_decode($posts['xtra']);

     foreach($xtras as $key=> $xtra_values){

        if($xtra_values->id == 44){
           $intro_text = $xtra_values->value;
        }else{
           $intro_text = $post['intro'];
        }     

     }




      echo $post['title'];.'<br />';
      echo $intro_text;
}
foreach($post\u数组为$key=>$posts){
$xtras=json_decode($posts['xtra']);
foreach($xtras作为$key=>$xtra_值){
如果($xtra_值->id==44){
$intro_text=$xtra_值->值;
}否则{
$intro_text=$post['intro'];
}     
}
echo$post['title'];“
”; echo$intro_文本; }
感谢您的帮助。谢谢大家!

试试看:

if(isset($xtra_values->id) && $xtra_values->id >= 0 && $xtra_values->id == 44){
尝试:

foreach($key=>$posts的post_数组){

foreach($key=>$posts的post_数组){


与mgraph相同,不起作用,$xtra_values->id总是设置的,因为它返回多个stdClass对象,在这两种情况下,现在我只得到$post[intro]是$xtra_值一个stdClass数组吗?foreach($xtras作为$key$xtra_值){to foreach($xtras作为$key=>$xtra_值){输入错误?是的,只是输入错误,我需要检查$xtra_values->id==44是否已设置,而不是$xtra_values->id是否已设置,但不知道如何检查这一点。非常感谢,我应该在第二个foreach谢谢你!!!!与mgraph一样,不起作用,并且$xtra_values->id始终处于设置状态,因为它返回的值超过第一个dClass对象,在这两种情况下,我现在只得到$post[intro]是$xtra_值一个stdclass数组?foreach($xtras作为$key$xtra_值){to foreach($xtras作为$key=>$xtra_值){typo?是的,只是打字,我需要检查$xtra_values->id==44是否已设置,而不是$xtra_values->id是否已设置,但不知道如何检查这一点。非常感谢,我应该在第二个foreach谢谢!!!!不起作用,并且$xtra_values->id始终处于设置状态,因为它在这两种情况下都返回多个stdClass对象案例现在我只得到$post[intro]无法做到这一点,看看上面的json结果,我有不止一个是的,我知道>=的作用,但是看看上面的结果,它在所有案例中都会检查,并且总是为true不起作用,$xtra_values->id总是被设置,因为它返回了多个stdClass对象,在这两种情况下我现在只得到$post[intro]不能这样做,看看上面的json结果,我不止一个是的,我知道>=的作用,但是看看上面的结果,它在所有情况下都会检查,并且总是正确的
$xtras  = json_decode($posts['xtra']);
$intro_text = null;


 foreach($xtras as $key=> $xtra_values){

    if($xtra_values->id == 44){
       $intro_text = $xtra_values->value;
    }     

 }
if($intro_text == null){
       $intro_text = $post['intro'];
    }