Latest web development tutorials
×

PHP コース

PHP コース PHP 簡単な紹介 PHP インストール PHP 文法 PHP 変数 PHP echo/print PHP データの種類 PHP 定数 PHP 文字列 PHP 演算子 PHP If...Else PHP Switch PHP 配列 PHP 配列のソート PHP スーパーグローバル PHP While 循環 PHP For 循環 PHP 関数 PHP マジック変数 PHP 名前空間 PHP オブジェクト指向の

PHP フォーム

PHP フォーム PHP フォーム認証 PHP フォーム - 必要なフィールド PHP フォーム - 確認メールおよびURL PHP 完全なフォームインスタンス PHP $_GET 変数 PHP $_POST 変数

PHP 応用チュートリアル

PHP 多次元配列 PHP 日付 PHP 含みます PHP ファイル PHP ファイルのアップロード PHP Cookie PHP Session PHP E-mail PHP セキュリティ E-mail PHP Error PHP Exception PHP フィルタ PHP 高度なフィルタ PHP JSON

PHP 7 新機能

PHP 7 新機能

PHP データベース

PHP MySQL 簡単な紹介 PHP MySQL 接続 PHP MySQL データベースの作成 PHP MySQL データテーブルを作成します。 PHP MySQL データを挿入 PHP MySQL 複数のデータの挿入 PHP MySQL プリペアドステートメント PHP MySQL データを読みます PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX 簡単な紹介 AJAX PHP AJAX データベース AJAX XML AJAX 実時間探索 AJAX RSS Reader AJAX 投票

PHP リファレンスマニュアル

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP 画像処理 PHP RESTful

PDOStatement :: fetchAllの

PHPのPDOリファレンスマニュアル PHPのPDOリファレンスマニュアル

PDOStatement :: fetchAllの - 結果セット内のすべての行の配列を返します(PHP 5> = 5.1.0、PECLのpdo> = 0.1.0)


説明

文法

array PDOStatement::fetchAll ([ int $fetch_style [, mixed $fetch_argument [, array $ctor_args = array() ]]] )

パラメータ

fetch_style

どのように次の行を制御するためには、呼び出し元に返されます。 この値は、PDO ::シリーズのFETCH_ *定数、PDO :: ATTR_DEFAULT_FETCH_MODE(デフォルトPDO :: FETCH_BOTH)のデフォルト値でなければなりません。

単一列のすべての値の配列を含む結果セットを返すには、PDO :: FETCH_COLUMNを指定する必要があります。 コラム-indexパラメータを指定することにより、所望の列を取得します。

1列に一意の値の結果セットを取得したい、あなたはPDOする必要があります:: FETCH_COLUMNとPDO :: FETCH_UNIQUEビット単位またはを。

グループ化された連想配列の指定された値に基づいて列を返すために、我々は:: FETCH_COLUMNとPDO :: FETCH_GROUPビット単位またはをPDOする必要があります。

fetch_argument
このパラメータの値に基づいてFetch_styleパラメータは異なる意味を持っています。

  • PDO::FETCH_COLUMN :ゼロ索引列に戻ります。

  • PDO::FETCH_CLASS :、クラス属性名に対応する各列のマッピング列を指定されたクラスのインスタンスを返します。

  • PDO::FETCH_FUNC :指定された関数の引数として、各行の列、および関数を呼び出した後、結果を返します。

ctor_args
fetch_styleパラメータがPDOとき:: FETCH_CLASS、クラスのコンストラクタのパラメータの定義以来。


戻り値

PDOStatement :: fetchAllの()は、残りのすべての行の配列を含む結果セットを返します。 この配列の各行は、アレイまたは列の値、または各列の名前に対応するオブジェクトの属性です。

システムの負担が発生します大量の結果セットを取得するには、この方法を使用し、ネットワークリソースの多くを取ることがあります。 データおよび操作するためのその使用PHPのすべてを取得し、結果セットに対処するためのデータベース・サービスの利用を検討する方が良いだろう。 例えば、前およびおよびSQLのORDER BY句で結果を定義するには、PHPのプロセスを介してデータを取得します。


結果セットに残っている全ての行を取得します。

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* 获取结果集中所有剩余的行 */
print("Fetch all of the remaining rows in the result set:\n");
$result = $sth->fetchAll();
print_r($result);
?>

上の例の出力は次のようになります。

Fetch all of the remaining rows in the result set:
Array
(
    [0] => Array
        (
            [NAME] => pear
            [0] => pear
            [COLOUR] => green
            [1] => green
        )

    [1] => Array
        (
            [NAME] => watermelon
            [0] => watermelon
            [COLOUR] => pink
            [1] => pink
        )

)

単一の結果は、すべての値を設定されています

次の例では、SQL文自体が行ごとに複数の列を返す場合でも、結果は別のリターン・すべての値を集中する方法を示しています。

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* 获取第一列所有值 */
$result = $sth->fetchAll(PDO::FETCH_COLUMN, 0);
var_dump($result);
?>

上の例の出力は次のようになります。

Array(3)
(
    [0] =>
    string(5) => apple
    [1] =>
    string(4) => pear
    [2] =>
    string(10) => watermelon
)

別々のグループによると、すべての値

次の例では、パケットの結果に基づいて、連想配列集中指定されたカラムの値を返す方法を示しています。 アレイは、3つのキーが含まれています:スイカ返された配列が一つだけ色が含まれていながら、リンゴと梨返される配列は、2つの異なる色が含まれています。

<?php
$insert = $dbh->prepare("INSERT INTO fruit(name, colour) VALUES (?, ?)");
$insert->execute(array('apple', 'green'));
$insert->execute(array('pear', 'yellow'));

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* 根据第一列分组  */
var_dump($sth->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_GROUP));
?>

上の例の出力は次のようになります。

array(3) {
  ["apple"]=>
  array(2) {
    [0]=>
    string(5) "green"
    [1]=>
    string(3) "red"
  }
  ["pear"]=>
  array(2) {
    [0]=>
    string(5) "green"
    [1]=>
    string(6) "yellow"
  }
  ["watermelon"]=>
  array(1) {
    [0]=>
    string(5) "green"
  }
}

結果の各行は、クラスをインスタンス化

以下列子は、PDO :: FETCH_CLASSはスタイルの動作を取得します示しています。

<?php
class fruit {
    public $name;
    public $colour;
}

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_CLASS, "fruit");
var_dump($result);
?>

上の例の出力は次のようになります。

array(3) {
  [0]=>
  object(fruit)#1 (2) {
    ["name"]=>
    string(5) "apple"
    ["colour"]=>
    string(5) "green"
  }
  [1]=>
  object(fruit)#2 (2) {
    ["name"]=>
    string(4) "pear"
    ["colour"]=>
    string(6) "yellow"
  }
  [2]=>
  object(fruit)#3 (2) {
    ["name"]=>
    string(10) "watermelon"
    ["colour"]=>
    string(4) "pink"
  }
}

各行には、関数を呼び出します

以下列子は、PDO :: FETCH_FUNCはスタイルの動作を取得します示しています。

<?php
function fruit($name, $colour) {
    return "{$name}: {$colour}";
}

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_FUNC, "fruit");
var_dump($result);
?>

上の例の出力は次のようになります。

array(3) {
  [0]=>
  string(12) "apple: green"
  [1]=>
  string(12) "pear: yellow"
  [2]=>
  string(16) "watermelon: pink"
}

PHPのPDOリファレンスマニュアル PHPのPDOリファレンスマニュアル