2011-10-26 61 views
0

我不知道究竟如何字,但我与照片一起试图输入一个标题。 for()自动增加并与字段名称相符。PHP变量汽车越来越多

这里是我的代码至今:

for ($i=1;$i<=21;$i++) { 
     if (file_exists(ABSPATH.'wp-content/uploads/fsrep/houses/additional/small/'.$ListingDetails->listing_id.'-'.$i.'.jpg')) { 
      if (($ListingDetails->listing_caption."_".$i) != '') {$ListingCaption = ($ListingDetails->listing_caption.'_'.$i);} else{$ListingCaption = 'View Slideshow';} 
      $AdditionalImages .= '<td align="center" valign="center"><a href="'.get_option('home').'/wp-content/uploads/fsrep/houses/additional/large/'.$ListingDetails->listing_id.'-'.$i.'.jpg" title="'.$ListingCaption.'" rel="lightbox[slideshow]" onmouseover="document.getElementById(\'fsrep-main-image-img\').src=\''.get_option('home').'/wp-content/uploads/fsrep/houses/additional/'.$ListingDetails->listing_id.'-'.$i.'.jpg\'; document.getElementById(\'fsrep-main-image-a\').rel=\'lightbox[slideshow]\'" onmouseout="document.getElementById(\'fsrep-main-image-img\').src=\''.get_option('home').'/wp-content/uploads/fsrep/houses/'.$ListingDetails->listing_id.'.jpg\'; document.getElementById(\'fsrep-main-image-a\')"><img src="'.get_option('home').'/wp-content/uploads/fsrep/houses/additional/small/'.$ListingDetails->listing_id.'-'.$i.'.jpg" class="full" /></a></td>'; 
      if ($i == 7 || $i == 14|| $i == 21) { 
       $AdditionalImages .= '</tr><tr>'; 
      } 
     } 
    } 

我绑得到它的输出$listing_caption正确,但不读的字段名称,例如$ListingDetails->listing_caption_1相反,我认为这是读它为$ListingDetails->listing_caption,但我不确定。

在MySQL数据库中的字段,例如:

listing_caption_1, listing_caption_2, listing_caption_3, etc. 
+0

是什么'$ ListingDetails'?它是从'mysql_fetch_row'行吗? – ariefbayu

+0

这实际上与照片或自动增加数字或数据库完全没有关系。这只是一个关于如何使用具有动态名称的变量的问题。下次请将您的问题缩小至_minimal_问题! –

+0

@ TomalakGeret'kal引用我写的第一句话“我不确定如何说出它”。感谢您对我的问题所做的贡献。 –

回答

3

尝试:

$capt_num = "listing_caption".'_'.$i; 
$ListingCaption = $ListingDetails->$capt_num; 
... 
+0

你太棒了!这工作完美! –

1

我不知道你的$ListingDetails是什么,但如果它代表一个数据库,并填充它可以说:mysql_fetch_assoc(),你可以打开:

$ListingCaption = ($ListingDetails->listing_caption.'_'.$i); 

进入:

$ListingCaption = $ListingDetails['listing_caption_'.$i]; 

假设这是您遇到问题的地方。