0

我有一个这样的数组

Array
(
[0] => Array
    (
        [id] => 139
        [name] => Eithne Maun
        [contactNo] => 877692398
        [email] => eithne@yahoo.co.uk
        [address] => 
        [county] => Cork
        [country] => Ireland
        [sourceOfContact] => Phone
        [type] => Corporate
        [dateAdded] => 2012-11-26
        [companyName] => 
        [dateOfBirth] => 
    )

)

我想遍历数组中的每个元素,如果值不为空,则仅显示下面的行

Number: <?php htmlout($contact[0]['contactNo']);?><br />
Email: <?php htmlout($contact[0]['email']);?><br />
Address: <?php htmlout($contact[0]['address']);?><br />
County: <?php htmlout($contact[0]['county']);?><br />
Country: <?php htmlout($contact[0]['country']);?><br />
Type of Contact: <?php htmlout($contact[0]['type']);?><br />
Company Name: <?php htmlout($contact[0]['companyName']);?><br />
Date of Birth: <?php htmlout($contact[0]['dateOfBirth']);?><br />

有没有我可以使用的带有循环的函数?

4

3 回答 3

1
$fields = array(
'Number' => 'contactNo',
'Email' => 'email',
'Address' => 'address',
'County' => 'county',
'Country' => 'country',
'Type of Contact' => 'type',
'Company Name' => 'companyName',
'Date of Birth' => 'dateOfBirth');

foreach ($fields as $key => $val)
{
    if (!empty($contact[0][$val]))
    {
        echo $key . ': ' . $contact[0][$val] . "<br />\n";
    }
}
于 2012-11-28T16:57:12.803 回答
0

尝试

<?php
if(!empty($contact[0]['contactNo'])) { ?>
   Number: <?php htmlout($contact[0]['contactNo']);?><br />
<?php } ?>
于 2012-11-28T16:51:24.170 回答
0
$record = array_filter($contact[0]);

然后遍历 $record 中的每个条目,所有空条目都将被过滤掉

但请注意,当像这样使用 array_filter 时,0 数值也被认为是空的

于 2012-11-28T16:58:41.833 回答