如何使用PHP在数组中显示SQl服务器数据库中的记录

时间:2016-08-24 16:18:00

标签: php sql-server

我有一个在线求职申请网站,我试图从数据库(MS SQL Server)查询位置。

我使用sqlsrv_fetch_array查询了数据库,我在数组中获取了位置列表。

但我想以这种格式显示数组。

<?php

    $select = array (
    'Province1' => 
      array ( 
        'City1' => 
        array (
          ID => 'Position1',
          ID => 'Position2',
        )    
      ),
    'Province2' => 
      array ( 
        'City2' => 
        array (
          ID => 'Position3',
          ID => 'Position4', 
        )   
      ),
   );
?>

数据库:

![在此处输入图片说明] [1]

我目前正在使用此代码:

$tsql = "SELECT * FROM Jobs";
$stmt = sqlsrv_query( $conn, $tsql);
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC)) {
    echo "".$row[0]."<br>\n";
    echo "".$row[1]."<br>\n";
    echo "".$row[2]."<br>\n";
    echo "".$row[3]."<br>\n";
}

Please see the screen shot of the page

1 个答案:

答案 0 :(得分:0)

执行此操作的基本方法是在从查询结果中获取行时,在结果数组中定义不同级别的分组:

while ($row = sqlsrv_fetch_object($stmt)) {
    $result[$row->Province][$row->City][$row->ID] = $row->Position;
}

每当您想要在结果中进行另一级别的分组时,只需添加另一个键,就像我在那里显示的一样。