PHP的。如果字段为空 - 删除行

PHP. If field is empty - delete row

提问人:Norbert Yuhas 提问时间:7/22/2017 最后编辑:KaraNorbert Yuhas 更新时间:8/2/2017 访问量:167

问:

目前,我使用以下内容: 我从mysql中进行选择并生成一个xml文件:

    while($r = mysqli_fetch_array($sql)){

      $xml .= "<Name>".$r['name']."</Name>";
      $xml .= "<Telephone>".$r['work']."</Telephone>";
    }

在正常情况下,我得到这个

<Name>Name Surname</Name>
<Telephone>111</Telephone>

但是,如果未填写数字字段,则在生成的文件中将接收该字段:

<Name>Name Surname</Name>
<Telephone></Telephone>

如果电话号码的字段为空,如何删除整个块(名称和电话)?

PHP 数组

评论


答:

1赞 u_mulder 7/22/2017 #1

当字段为空时,不添加任何内容:$xml

while($r = mysqli_fetch_array($sql)){
    if (!empty($r['work'])) {
      $xml .= "<Name>".$r['name']."</Name>";
      $xml .= "<Telephone>".$r['work']."</Telephone>";
    }
}

甚至修改您的 sql-query 以仅选择字段不为空的值:work

SELECT field1, field2, field3
FROM `some_table`
WHERE `work` <> ''

在这种情况下,您可以保持 php 代码不变。