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


Check if specific array value isset PHP

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

我遇到的问题是,如果$xtra_values->id 44不存在,我会从上一篇文章中获得介绍文本,而不是$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_array as$key=>$posts){

$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'];
    }

try:

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