2017-06-19 63 views
1

以下代碼通過圖像目錄循環並使用div輸出。我想用這些圖片作爲標籤,以便我可以將它們用作選擇。

爲此,我需要唯一的ID對每個輸入,所以我這樣做與$ i ++在事情:

$i = 1; 
foreach (new DirectoryIterator('img/thumbnail') as $fileInfo) { 
    if($fileInfo->isDot()) continue; 
    echo "<label for='grid-item-" . $i++ . "'><div class='grid-item' style='background-image: url(img/thumbnail/" . $fileInfo->getFilename() . ");'></div></label>"; 
    echo "<input type='checkbox' id='grid-item-" . $i++ . "'>"; 
} 

然而,這種循環每$ I ++得到增加,像這樣:

標籤 - > 1

輸入ID - > 2

標籤 - > 3

輸入ID - > 4

但我想給他們組,這樣的標籤和輸入的匹配:

標籤 - > 1

input id - > 1

label for - > 2

輸入ID - > 2

我怎麼能這個循環每2項?

+4

''''''只要$使用我第二次不增加它 –

+0

你'增加了很多次。在你的foreach結尾而不是內聯處執行它。 – aynber

回答

6

只需增加$ i而不是兩次。試試下面的例子:

$i = 1; 
    foreach (new DirectoryIterator('img/thumbnail') as $fileInfo) { 
     if($fileInfo->isDot()) continue; 
     echo "<label for='grid-item-" . $i . "'><div class='grid-item' style='background-image: url(img/thumbnail/" . $fileInfo->getFilename() . ");'></div></label>"; 
     echo "<input type='checkbox' id='grid-item-" . $i . "'>"; 
     $i++; 
    }