2010-08-16 7 views
0

동적으로 테이블을 만드는 데 사용하는 배열이 있습니다. 값이 추출되는 이름 = 값 쌍 (Server = server.alias)이 있는데 은 다른 웹 페이지로으로 하이퍼 링크되었습니다.동적으로 href 링크가있는 php - map 테이블 행

도움이 필요한 것은 별칭 이름을 하드 코드로 작성해야하는 특정 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

나는 당신의 문제를 해결하는 열쇠는 당신이 더 많은 정보가 필요 것이라고 생각 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($server_array as $server_id => $server_info) 
{ 
    echo 'Server ID: '.$server_id; 
    echo 'Server Alias: '.$server_info['alias']; 
    echo 'Server URL: '.$server_info['href']; 
} 

서식 코드가없는,하지만 당신은 아이디어를 얻을 : 위의 배열로

는 foreach 루프는 다음과 같이 될 것이다.

+0

기본적으로 $ server_array는 foreach 루프에 공급됩니까? 그래서 기본적으로 이름 = 값을 href의 핵심으로 비교합니까? 감사. – cjd143SD

+0

나는 내 대답을 편집하여 모든 것을 인쇄하는 데 필요한 foreach 예제를 추가했습니다. 도움이되는지 알려주세요. – Gabriel