繁体   English   中英

如何检查变量是否为空或在PHP中,如果它不需要在表中显示它

[英]how to check if variable is empty or not in php and if its no need to display it in the table

我有MYSQL数据库的PHP代码,代码在其中提取并选择所需的值,并将其显示在表中。

我需要做的是在显示之前检查该变量是否为空不要在表中显示。

为此,我使用了if语句,但是它不起作用。

码:

$sql = $wpdb->prepare("select i.siteID
     , i.siteNAME
     , i.equipmentTYPE
     , c.latitude
     , c.longitude
     , c.height 
     , o.ownerNAME
     , o.ownerCONTACT
     , x.companyNAME
     , y.subcontractorCOMPANY
     , y.subcontractorNAME
     , y.subcontractorCONTACT
  from site_info i
  LEFT  
  JOIN owner_info o
    on i.ownerID = o.ownerID
  LEFT  
  JOIN company_info x
    on i.companyID = x.companyID
  LEFT 
  JOIN subcontractor_info y
    on i.subcontractorID = y.subcontractorID
    LEFT JOIN site_coordinates2 c
    on i.siteID=c.siteID 
    where 
    i.siteNAME = %s
    AND 
    o.ownerID = %d
    AND 
    x.companyID = %d
   ",$site_name,$owner_name,$company_name);

 $query_submit =$wpdb->get_results($sql, OBJECT);

    echo "<br>";
    echo "<br>";

foreach ($query_submit as $obj) {

  echo "<table class='t1' width='30%'> ";
  echo     "<tr>";
  echo           "<th>Site ID</th>";
  echo           "<th>Site Name</th>";
  echo           "<th> Lattitude</th>";
  echo           "<th>Longitude </th>";
  echo           "<th>Owner Name</th>";
  echo           "<th>Company Name</th>";
  if(isset ($obj->equipmentTYPE))
  { 
     echo "<th>Equipment Type</th>";


  } 
  else { echo ''; } 

  if(isset ($obj->ownerCONTACT))
  { 
     echo "<th>Owner Contact</th>";


  } 
  else { echo ''; } 

  echo   "</tr>";  
  echo   "<tr>";   
  echo         "<td>".$obj->siteID."</td>";
  echo         "<td>".$obj->siteNAME."</td>";
  echo         "<td>".$obj->latitude."</td>";
  echo         "<td>".$obj->longitude."</td>";
  echo         "<td>".$obj->ownerNAME."</td>";
  echo         "<td>".$obj->companyNAME."</td>";
  if(isset ($obj->equipmentTYPE))
  { 
     echo "<td>".$obj->equipmentTYPE."</td>";


  } 
  else { echo ''; } 

  if(isset ($obj->ownerCONTACT))
  { 
    echo "<td>".$obj->ownerCONTACT."</td>";


  } 
  else { echo ''; } 

  echo   "</tr>";            


}

?>

您正在使用isset()当检索值$obj它可能具有或可能不具有所需的值,因此将始终设置所请求的索引,因为它可以为null或为空。

您可以使用:

 if(!empty($obj->ownerCONTACT))

要么:

if(count($obj->ownerCONTACT) > 0)

isset将检查是否设置了值,并检查变量是否为空

尝试这个

echo (!empty($obj->equipmentTYPE)) ? $obj->equipmentTYPE : '';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM