php - динамически отображать строку таблицы со ссылкой href - PullRequest
0 голосов
/ 17 августа 2010

У меня есть массив, который я использую для динамического создания таблицы.У меня есть пара имя = значение (Server = server.alias), значения которой извлекаются, и я хотел бы сделать ее гиперссылкой на другую веб-страницу.код для сопоставления имени псевдонима с конкретной ссылкой href, которая, я думаю, мне потребуется для жесткого кода.Ссылка href отличается для каждого псевдонима, поэтому здесь нет шаблона.

Подойдет ли для этого заявление if?Любые другие предложения, чтобы сделать это?Спасибо.

Ожидаемый результат:

Server  
----------------
server1.alias  <-- hreflink = http://server1.name.com:/9999
server2.alias  <-- hreflink = http://server2.name.colo.com:/2999

Мой код, до сих пор генерирующий динамические строки, выглядит следующим образом:

$keys = array('Server');                                                              
echo '<table><tr>';                             
foreach ($keys as $column)
   echo '<th>' . $column . '</th>';
    echo '</tr>';

foreach ($data as $row){
   echo '<tr>';                                         
     foreach ($keys as $column)                 
        if (isset($row[$column])){                                                                   
          echo '<td>' . $row[$column];
          } else {
          echo '<td>' . '' . '</td>';
        }
}
echo '</table>';

1 Ответ

1 голос
/ 17 августа 2010

Я думаю, что ключом к решению вашей проблемы является то, что вам понадобится больше информации, чтобы иметь возможность создавать список, который вы хотите, с помощью foreach.Я бы предложил использовать что-то вроде этого:

$server_array = array(
  'server1' => array(
    'alias' => 'server1.alias',
    'href' => 'http//server1.name.com'
  ),
  'server2' => array(
    'alias' => 'server2.alias',
    'href' => 'http//server2.name.colo.com'
  )
);

Вам определенно нужна вся информация в вашем массиве, иначе вы никогда не сможете делать то, что хотите.

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

С указанным выше массивом цикл foreach будет выглядеть следующим образом:

foreach($server_array as $server_id => $server_info)
{
  echo 'Server ID: '.$server_id;
  echo 'Server Alias: '.$server_info['alias'];
  echo 'Server URL: '.$server_info['href'];
}

Код форматирования отсутствует, но вы поняли идею.

...