2014-04-21 75 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'); ?>