関数・クラス解説

sqlsrv_fetch_array

version:No version information available (公式)

行を配列として返す

公式リファレンス

書式

sqlsrv_fetch_array ( resource $stmt [, int $fetchType [, int $row [, int $offset ]]] ) : array

説明

クエリ結果から列データを順に返します。列データの型は連想配列、配列、またはその両方(デフォルト)を選択できます。

パラメータ

stmt
sqlsrv_query あるいは sqlsrv_prepare が返すステートメントリソース。
fetchType
返り値の型を指定します。連想配列SQLSRV_FETCH_ASSOC, 配列SQLSRV_FETCH_NUMERIC, and 連想配列と配列の両方SQLSRV_FETCH_BOTH (デフォルト) のうち1つを指定します。 SQLSRV_FETCH_ASSOC(連想配列)は同じ名前の列が複数存在する結果セットを扱う際に使ってはいけません(連想配列のキーが重複するため)。
row
スクロール可能なカーソルを用いた結果セットから、取得する列を指定します。 定義済み定数は、 SQLSRV_SCROLL_NEXT(次の列), SQLSRV_SCROLL_PRIOR(前の列), SQLSRV_SCROLL_FIRST(最初の列), SQLSRV_SCROLL_LAST(最後の列), SQLSRV_SCROLL_ABSOLUTE(列番号の絶対指定) and, SQLSRV_SCROLL_RELATIVE(列番号の相対指定) (デフォルト値). この引数を指定する場合は、fetchType を指定しなくてはなりません。
offset
引数rowに SQLSRV_SCROLL_ABSOLUTE または SQLSRV_SCROLL_RELATIVE を指定する際に、この引数で取得する列を指定します。 列番号は0から始まります。

返値

成功時に配列を返します。 返す列がない場合はNULL を返します。エラーが起きた場合は FALSEを返します。

注意

上の例で fetchType の指定を省略したり、定数 SQLSRV_FETCH_TYPE を明示的に指定した場合は、 連想配列と数値添字の両方のキーを含む配列を返します。 同じ名前のカラムが複数存在する場合は、最後に現れたカラムがそれまでのすべてを上書きします。 名前の衝突を回避するには、別名を指定しましょう。 無名のカラムが返された場合、連想配列のキーは空文字列("")になります。

サンプル

例1 連想配列を扱う場合の例

$serverName = "serverName\instanceName"; $connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password"); $conn = sqlsrv_connect( $serverName, $connectionInfo ); if( $conn === false ) {     die( print_r( sqlsrv_errors(), true)); } $sql = "SELECT FirstName, LastName FROM SomeTable"; $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['LastName'].", ".$row['FirstName'].""; } sqlsrv_free_stmt( $stmt);

例2 配列を扱う場合の例

$serverName = "serverName\instanceName"; $connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password"); $conn = sqlsrv_connect( $serverName, $connectionInfo ); if( $conn === false ) {     die( print_r( sqlsrv_errors(), true)); } $sql = "SELECT FirstName, LastName FROM SomeTable"; $stmt = sqlsrv_query( $conn, $sql ); if( $stmt === false) {     die( print_r( sqlsrv_errors(), true) ); } while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC) ) {       echo $row[0].", ".$row[1].""; } sqlsrv_free_stmt( $stmt);

参考

  • sqlsrv_connect() - Opens a connection to a Microsoft SQL Server database
  • sqlsrv_query() - Prepares and executes a query
  • sqlsrv_errors() - Returns error and warning information about the last SQLSRV operation performed
  • sqlsrv_fetch() - Makes the next row in a result set available for reading
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール