我有这段代码。
它的作用是通过电子邮件显示供应商名称。 问题是如果供应商名称为空,因为有些人不需要它,我会收到一个错误,将我重定向到这段代码。
有没有办法让我说如果suppliername为空,则显示为none?还是作为空白?
<?php
$array1supplier = get_post_meta($productId, 'fancyincarray', true);
echo $array1supplier['supplier'];
?>
答案 0 :(得分:0)
要检查数组是否有密钥,您可以使用isset函数,如下所示:
$array1supplier = get_post_meta($productId, 'fancyincarray', true);
echo (isset($array1supplier['supplier'])) ? $array1supplier['supplier'] : '';
答案 1 :(得分:0)
使用empty()
功能检查是否为空。
代码:
<?php
$array1supplier = get_post_meta($productId, 'fancyincarray', true);
if(empty($array1supplier['supplier'])) {
echo "Supplier is empty!";
} else {
echo $array1supplier['supplier'];
}
?>
或
您还可以使用isset()
函数来检查它是否已设置。
代码:
<?php
$array1supplier = get_post_meta($productId, 'fancyincarray', true);
if(isset($array1supplier['supplier'])) {
echo $array1supplier['supplier'];
} else {
echo "Supplier is empty!";
}
?>
或
你可以使用if($array1supplier['supplier'] == "")
代码:
<?php
$array1supplier = get_post_meta($productId, 'fancyincarray', true);
if($array1supplier['supplier'] == "") {
echo "Supplier is empty!";
} else {
echo $array1supplier['supplier'];
}
?>
所有这些都是一样的,你可以选择任何你想要的东西
答案 2 :(得分:0)
好像你期望从get_post_meta()
get_post_meta(int $ post_id,string $ key ='',bool $ single = false)
检索帖子的帖子元字段。
返回:(混合)如果$ single为false,则为数组。将是价值 元数据字段,如果$ single为真。
所以最后一个参数应该是false
。
使用isset()
确定变量是否已设置且不是NULL
试试这个:
$array1supplier = get_post_meta($productId, 'fancyincarray', false);
echo (isset($array1supplier['supplier'])) ? $array1supplier['supplier'] : "Empty";
答案 3 :(得分:-1)
<?php
$array1supplier = get_post_meta($productId, 'fancyincarray', true);
echo (!empty($array1supplier['supplier'])
? $array1supplier['supplier']
: '';
?>