Отображение данных из массивов в динамической таблице PHP

У меня есть файл с 20 фотографиями художников страны и текстовый файл со своими веб-сайтами. Я пытаюсь отобразить эти данные в таблице столбцов 4 строки 5, используя PHP.

Я пытаюсь использовать цикл foreach, который выполняет итерацию для каждых 5 элементов в массиве (для загрузки каждой строки по одному)

foreach(array_chunk($CountryArtists, 5, true) as $Value) { <table> <tr><td> $CountryArtists[$Value] $ArtistImages[$Value]</td> <td> $CountryArtists[$Value] $ArtistImages[$Value]</td> <td> $CountryArtists[$Value] $ArtistImages[$Value]</td> <td> $CountryArtists[$Value] $ArtistImages[$Value]</td> <td> $CountryArtists[$Value] $ArtistImages[$Value]</td></tr> </table> 

Я пытался выяснить, как загрузить изображения в массив, но не повезло. Я начинаю думать, что я должен поместить ссылку на расположение файла в массиве, но я не уверен.

 $colsToDisplay = 5; $CountryArtists = array("C:\Users\THEFOLDER\images"); $ArtistImages = array("AJackson", "BShelton", "CUnderwood", "DBentley", "DLJones", "DRucker", "JAldean", "JCash", "JJohnson", "JStrait", "KChesney", "LAntebellum", "LDavis", "LRimes", "MLambert", "MMcBride", RTravis", "STwain", TKeith", TMcgraw"); $filename = "C:\Users\THEFOLDER\images"; 

Я относительно новичок в PHP, и мне просто нужно знать, как загрузить мои изображения и как правильно отобразить эту таблицу.

РЕДАКТИРОВАТЬ:

Я добавил эхо в строки таблицы, но он просто показывает эхо в выходе браузера:

 " echo " $CountryArtists[$Value] $ArtistImages[$Value]" echo " .$CountryArtists[$Value]. $ArtistImages[$Value]" echo " .$CountryArtists[$Value]. $ArtistImages[$Value]" echo " .$CountryArtists[$Value]. $ArtistImages[$Value]" echo " .$CountryArtists[$Value]. $ArtistImages[$Value]" echo "" } ?> 

Теперь мой код выглядит так:

 foreach(array_chunk($CountryArtists, 5, true) as $Value) { echo "<table>" echo "<tr><td> $CountryArtists[$Value] $ArtistImages[$Value]</td>" echo "<td> .$CountryArtists[$Value]. $ArtistImages[$Value]</td>" echo "<td> .$CountryArtists[$Value]. $ArtistImages[$Value]</td>" echo "<td> .$CountryArtists[$Value]. $ArtistImages[$Value]</td>" echo "<td> .$CountryArtists[$Value]. $ArtistImages[$Value]</td></tr>" echo "</table>" } 

Я чувствую, что я плохо себя чувствую, был бы так благодарен, если бы это указывало мне.

ПОЛНЫЙ ФАЙЛ

  <!DOCTYPE HTML> <html> <body> <?php $ArtistImages = array("AJackson", "BShelton", "CUnderwood", "DBentley", "DLJones", "DRucker", "JAldean", "JCash", "JJohnson", "JStrait", "KChesney", "LAntebellum", "LDavis", "LRimes", "MLambert", "MMcBride", "RTravis", "STwain", "TKeith", "TMcgraw"); $count = count($ArtistImages); $cols = 6; $div = (int) $count / (int)$cols; $diff = ceil($div); echo $fin = $cols * $diff; $a = 1; echo '<table>'; for($i = 0; $i < $fin; $i++) { if($a == 1) echo "\t<tr>".PHP_EOL; $artist = (!empty($ArtistImages[$i]))? $ArtistImages[$i]: ""; echo "\t\t".'<td>'.$artist.'</td>'.PHP_EOL; if($a == $cols) { echo "\t</tr>".PHP_EOL; $a=0; } $a++; } echo '</table>'; ?> </body> </html> 

Я думаю, вы можете искать что-то похожее на этот алгоритм. Он добавляет строку каждые 5 значений. Вы захотите сделать делитель, чтобы он сделал ceil() чтобы добавить все необходимые пустые ячейки. Вы можете сделать это foreach, если вы делаете <ul> и <li> и используете CSS, чтобы они отображались как таблица. Тогда вам не нужно вычислять лишние ячейки.

 $i = 1; echo '<table>'; foreach($array as $value) { if($i == 1) echo "<tr>"; echo '<td>'.$value.'</td>'; if($i == 5) { echo "</tr>"; $i=0; } $i++; } echo '</table>'; 

РЕДАКТИРОВАТЬ:

Вот более практичная версия, основанная на вашем:

 $ArtistImages = array("AJackson", "BShelton", "CUnderwood", "DBentley", "DLJones", "DRucker", "JAldean", "JCash", "JJohnson", "JStrait", "KChesney", "LAntebellum", "LDavis", "LRimes", "MLambert", "MMcBride", "RTravis", "STwain", "TKeith", "TMcgraw"); // Count total artists in array $count = count($ArtistImages); // Choose how many to display per row $cols = 6; // Divide the total by the columns $div = (int) $count / (int)$cols; // Round up (incase the number will produce empty cells $diff = ceil($div); // Mulitply the final numbers $fin = $cols * $diff; // Create an autoincrementer to keep track of next rows $a = 1; echo '<table>'.PHP_EOL; for($i = 0; $i < $fin; $i++) { if($a == 1) echo "\t<tr>".PHP_EOL; // You need to see if this artist is populated. If not, make empty // If left without this it will have a warning saying not exists $artist = (!empty($ArtistImages[$i]))? $ArtistImages[$i]: ""; echo "\t\t".'<td>'.$artist.'</td>'.PHP_EOL; if($a == $cols) { echo "\t</tr>".PHP_EOL; $a=0; } $a++; } echo '</table>'; 

В php-файле вам нужно эхо-данные, которые вы хотите. Однако если вы в php-файле, вы можете закрыть php, как это. ? > И напишите html-код. Когда вы хотите отображать атрибуты php, вам снова нужно открыть php, как это: и продолжить, как это … Php fcan только вернуть строку или json-данные. Сообщите мне, если это сработает для вас ….