php - 如何检查php中的变量是否为空以及是否不需要在表中显示

标签 php mysql if-statement

我有带有 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)

关于php - 如何检查php中的变量是否为空以及是否不需要在表中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44817491/

相关文章:

php - JSON 数组中的最后一个逗号到 android

php - 如何测试 facebook "like"按钮?

php - 详细信息未存储到数据库中

c++ - 为什么在 C++ 的 if 语句中,所有可能的整数 "true"都在 long int 的范围内,而 0 却不是?

php - 如何在 Laravel 的 Controller 中捕获异常?

php - 简单的 .htaccess 重写不适用于 GoDaddy

php - 通过从mysql数据库获取图像来显示php文件中的一些图像

mysql - 在 Hibernate 中查询

jquery - 如何在 jQuery 中引用元素

c# - 在if语句中,如果其中一个由or分隔的部分返回true,是否继续语句?