使用PHP(如果它需要,jquery):如何用foreach循環填充佔位符框?
我有這個頁面有30個框。它永遠不會更多或更少。
在這些30盒,其中的一些將與「框特定」的數據來填充。
我怎麼能說:
如果有20條記錄上的foreach循環trought,那麼,20盒將包含數據,其餘的將留在佔位符。 如果在foreach上有10條記錄,那麼20個盒子將留在placeholdes中。
怎麼能像這樣能實現嗎? 任何人都可以爲我提供一個很好的例子嗎?
非常感謝, MEM
使用PHP(如果它需要,jquery):如何用foreach循環填充佔位符框?
我有這個頁面有30個框。它永遠不會更多或更少。
在這些30盒,其中的一些將與「框特定」的數據來填充。
我怎麼能說:
如果有20條記錄上的foreach循環trought,那麼,20盒將包含數據,其餘的將留在佔位符。 如果在foreach上有10條記錄,那麼20個盒子將留在placeholdes中。
怎麼能像這樣能實現嗎? 任何人都可以爲我提供一個很好的例子嗎?
非常感謝, MEM
假設$data
是您的數據的數字鍵的排列:
<?php for($i = 0; $i < 30; $i++): ?>
<?php if(isset($data[$i]): ?>
<!-- the html for a box WITH data -->
<?php else: ?>
<!-- html for an empty placeholder box -->
<?php endif; ?>
<?php endfor;?>
裝滿數據的比特數組你必須加30個佔位符,以數組的第30種元素,以及遍歷這些。
你有沒有每個盒子的名字?假設有在10或20條記錄這我假設在一個數組一些名稱/ ID ...
function OutputBoxes($records, $boxes){
foreach($boxes as $box){
$box->PopulateWithPlaceHolder();
}
foreach($records as $record){
$box = GetMatchingBox($record);
$box->SetValue($record['valueProperty']);
}
foreach($boxes as $box){
echo $box->ElementHtml();
}
}
這裏假設你有一些類型框對象的它知道如何輸出本身作爲HTML ,並設置你想要的任何值來自記錄。
用你所有的數據組成一個數組。然後運行for-loop(0..30)來構建您的盒子。對於循環中的每個項目,如果您的box-data數組包含元素,則輸出特定數據,否則輸出佔位符數據。事情是這樣的......
<?php
$box_data = array(
"data for box 1",
"data for box 2",
"data for box 3"
);
for($i=0; $i<30; ++$i) {
if($i >= count($box_data)) {
// output "placeholder box"
echo "<div class=\"box placeholder\">Placeholder Box</div>";
} else {
// output the box's specific data
echo "<div class=\"box non-placeholder\">{$box_data[$i]}</div>";
}
}
謝謝大家。 :)我會看看你的解決方案,看看什麼最適合這裏。 K.問候。 – MEM 2010-11-28 00:02:43