#php #html #css
#php #HTML #css
Вопрос:
У меня есть небольшой код, который объединяет два массива в таблицу с 2 столбцами. Это работает. Но теперь у меня есть новый массив со значениями из $file3
. Я понимаю, как создать таблицу с двумя столбцами, но как я могу добавить третий столбец с содержимым $file3
?
<?php
$file1 = "c:/presencetool/ramfile1.txt";
$file2 = "c:/presencetool/ramfile2.txt";
$file3 = "c:/presencetool/ramfile3.txt"; //new file
if(file_exists($file1) amp;amp; file_exists($file2))
{
$line1 = file($file1, FILE_IGNORE_NEW_LINES);
$line2 = file($file2, FILE_IGNORE_NEW_LINES);
$line3 = file($file3, FILE_IGNORE_NEW_LINES); //new array
$combine = array_combine($line1, $line2); //I want to also combine $line3 here
$html = '<table align="center">';
$html .= '<tr><td width="350px";></td><td></td></tr>';
$i = 1;
foreach ($combine as $key => $value):
$html .= '<tr class="'.$value.'">';
$html .= '<td font-size:"90pt">'.$key.'</td>';
$html .= '<td font-size:"90pt">'.$value.'</td>';
//here something like $html .= '<td font-size:"90pt">'.$value2.'</td>';
$html .= '</tr>';
$i ;
endforeach;
$html .= '</table>';
echo $html;
}
В $file1
, $file2
и $file3
указаны имена, адреса и электронные письма некоторых пользователей.(одно значение в строке)
Комментарии:
1. Вы должны создать 2D массив, а не массив ключ-значение.
2. @MrLister потому что массив ключ-значение работает только с 2 связанными значениями, верно? Я думал об этом, но я не был совсем уверен, как создать другой тип массива. Спасибо! Я проведу некоторое исследование о 2D-массивах.
Ответ №1:
если ваш массив выглядит следующим образом :
$line[] = ['name' => 'name1','email' => 'email@mail.com'];
$line[] = ['name' => 'name2','email' => 'email2@mail.com'];
$line[] = ['name' => 'name3','email' => 'email3@mail.com'];
Тогда попробуйте следующее, надеюсь, это поможет вам
$html = '<table align="center" border="1" width="50%">';
$html .= '<tr><th>Name</th><th>Email</th><th>Address</th></tr>';
for($i=0;$i<count($line1);$i ){
$html .= '<tr class="'.$line1[$i].'">';
$html .= '<td font-size:"90pt">'.$line1[$i].'</td>';
$html .= '<td font-size:"90pt">'.$line2[$i].'</td>';
$html .= '<td font-size:"90pt">'.$line3[$i].'</td>';
$html .= '</tr>';
}
$html .= '</table>';
echo $html;
Комментарии:
1. На самом деле нет, $ line1 заполнен именами, $ line2 заполнен адресами, а $ line 3 заполнен адресами электронной почты
2. я внес некоторые изменения в приведенный выше код, пожалуйста, проверьте, что приведенный выше результат отражает вашу реальную потребность @buttercup