我使用sqrsrv
从php
SQL服务器连接获取输出。我可以打印每列的行,但是,我无法打印这些行的标题。当我在浏览器中查看(localhost)时如何获取标题/列名?
我在浏览器中输出了这样的输出,
Joseph Alaba Good
Craig Nelson Avg
Benjamin Hennepy Avg
...
我需要这样,我在Management Studios中的方式(使用FName,LName和Staus标题),
---------------------------
|FName |LName |Status|
---------------------------
|Joseph |Alaba |Good |
|Craig |Nelson |Avg |
|Benjamin |Hennepy |Avg |
...
连接到数据库后,我使用这样选择并打印,
$sql = "SELECT * FROM tbl";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['Fname'].$row['LName'].$row['Status']."<br/>";
}
我一直在搜索,找不到在echo
语句中打印标题的代码。任何建议将不胜感激。
答案 0 :(得分:1)
您可以使用sqlsrv_field_metadata()
。它适用于使用sqlsrv_prepare
和sqlsrv_query
创建的语句。它返回一个数组数组,其中包含查询返回的每个字段的元数据。
您可以像这样使用它:
$sql = "SELECT * FROM tbl";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
foreach(sqlsrv_field_metadata($stmt) as $field){
echo $field['Name']; // The Name key provides the column name
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['Fname'].$row['LName'].$row['Status']."<br/>";
}
答案 1 :(得分:0)
echo 'Fname'.'LName'.'Status'."<br/>";