2014-04-21 107 views
0

我试图不显示文本,如果没有ID#在数据库字段'类型'。如果在数据库中有一个'id'项目,那么这个信息将显示为'Type:Item type',这很好。如果数据库ID字段为空隐藏文本

问题是当数据库中没有id#因为没有选择项目类型,那么在页面上出现'Type:'时,我宁愿不显示任何东西。

显示文本的代码如下。

 <? if($this->params->get('item_types', 1) == 1 || ($this->params->get('item_types', 1) == 2 && !empty($this->item->types))){ ?> 
    <strong class="label_detailed_item"><?php echo JText::_('Type'); ?></strong> <span class="value_detailed_item"><?php echo implode("/",$this->item->types); ?></span><br /> 
    <? } ?> 

我曾尝试使用以下改变,但文本仍显示

<?php if (!empty($this->item->types)) echo JText::_('Type'); ?> 

任何帮助,将不胜感激。

+1

你在你的空()调用忘了'$'...'(空($本 - > ....)' –

+0

改变谢谢,但 '$' 是代码我有 – nrider

+0

试试'!empty($ this-> item-> types)' –

回答

0

$ this-> item-types可能包含空格字符。这将导致empty()返回FALSE。

如果您正在查找某个Id,并且该Id总是一个整数,则会将其转换为整数。

<?php if (!empty((integer)$this->item->types)) echo JText::_('Type'); ?>