mssql_fetch_field

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_fieldフィールド情報を取得する

警告

この関数は PHP 7.0.0 で 削除 されました。

この関数の代替として、これらが使えます。

説明

mssql_fetch_field ( resource $result [, int $field_offset = -1 ] ) : object

mssql_fetch_field() は、あるクエリー結果のフィールドに関して情報を得るために使用します。

パラメータ

result

処理対象となる結果リソース。これは mssql_query() のコールによって取得します。

field_offset

フィールドオフセット。フィールドオフセットが指定されない場合、 mssql_fetch_field() によりまだ取得されていない次のフィールドが取得されます。 field_offset は 0 から始まります。

返り値

フィールド情報を含むオブジェクトを返します。

オブジェクトのプロパティは次のようになります。

  • name - カラム名。カラムが関数の結果である場合、このプロパティは computed#N に設定されます。ただし、#N はシリアル番号です。
  • column_source - そのカラムが取得されたテーブル
  • max_length - カラムの最大長
  • numeric - そのカラムが数字である場合に 1
  • type - カラムの型

例1 mssql_fetch_field() の例

<?php
// MSSQL に接続し、データベースを選択します
mssql_connect('MANGO\SQLEXPRESS''sa''phpfi');
mssql_select_db('php');

// select クエリを MSSQL に送信します
$query mssql_query('SELECT * FROM [php].[dbo].[persons]');

// テーブルを作成します
echo '<h3>Table structure for \'persons\'</h3>';
echo 
'<table border="1">';

// テーブルのヘッダ
echo '<thead>';
echo 
'<tr>';
echo 
'<td>Field name</td>';
echo 
'<td>Data type</td>';
echo 
'<td>Max length</td>';
echo 
'</tr>';
echo 
'</thead>';

// すべてのフィールドの出力
echo '<tbody>';

for (
$i 0$i mssql_num_fields($query); ++$i) {
    
// フィールド情報を取得します
    
$field mssql_fetch_field($query$i);

    
// 行を表示します
    
echo '<tr>';
    echo 
'<td>' $field->name '</td>';
    echo 
'<td>' strtoupper($field->type) . '</td>';
    echo 
'<td>' $field->max_length '</td>';
    echo 
'</tr>';
}

echo 
'</tbody>';
echo 
'</table>';

// 結果を開放します
mssql_free_result($query);
?>

参考