PHP如果$var为空,则返回$var2


PHP if $var null then return $var2

我一直没能找到这个问题的答案:

我的代码是这样的:

echo ' <p> '.$test2.'</p> ';

我想让$test2改变,如果它是空的,我已经尝试了以下代码和一堆其他,它只是打破了页面

$test2 = if(empty($price)){ return $pstatus};

任何帮助将不胜感激

UPDATE我已经修改了我的代码,现在它返回价格,但如果价格是空的它返回什么当它应该返回$pstatus

所以$price是625000如果变量是空的它应该从$pstatus变量

返回sold
$price = number_format($p->meta_box->REAL_HOMES_property_price);
$fimage = $p->better_featured_image->media_details->sizes->medium->source_url;
$ptitle = $p->title->rendered;
$pdesc = $p->excerpt->rendered;
$plink = $p->link;
$pstatus = $p->pure_taxonomies->{"property-status"}[0]->name;
$test2 = $pstatus ? $price : $test2;

可以内联:

$test2 = $price ? $pstatus : $test2;

如果你需要将$price赋值给$test2,如果没有price则赋值给$pstatus:

$test2 = $price ? $price : $pstatus;

我会用is_null(),如果你说你真的想检查null

  $test2 = !is_null( $price ) ? $pstatus : $test2;

想让$test2改变,如果它是null,我有

请注意,当使用==检查值时,PHP将看到0, 0.0, false, null和其他一些东西为假。如果price为0,则为假,这可能是您想要或期望的,也可能不是。

您还可以检查$price === null三个相等检查类型和值是否相同