當前位置:
首頁 > 知識 > PHP PDO fetch 模式各種參數的輸出結果一覽

PHP PDO fetch 模式各種參數的輸出結果一覽

PDO 的 fetch 模式功能實在是太方便了,但每次要產生想要的結果都要試太麻煩了,這裡列出可能的組合。

代碼如下:

$dbAdapter = new PDO("mysql:host=localhost;dbname=test", "root", "1234");

$dbAdapter->exec("SET NAMES "utf8";");

$data = $dbAdapter->query("

SELECT id, name, method FROM category

")->fetchAll(PDO::FETCH_ASSOC);

//var_dump($data);

/*

array(

array(

"id" => "1",

"name" => "HBO",

"method" => "service",

),

array(

"id" => "2",

"name" => "本周新片",

"method" => "movie",

),

array(

"id" => "3",

"name" => "熱映中",

"method" => "movie",

),

)

*/

$data = $dbAdapter->query("

SELECT name, method FROM category

")->fetchAll(PDO::FETCH_COLUMN);

//var_dump($data);

/*

array(

"HBO",

"本周新片",

"熱映中",

)

*/

$data = $dbAdapter->query("

SELECT id, name, method FROM category

")->fetchAll(PDO::FETCH_UNIQUE | PDO::FETCH_ASSOC);

//var_dump($data);

/*

array(

"1" => array(

"name" => "HBO",

"method" => "service",

),

"2" => array(

"name" => "本周新片",

"method" => "movie",

),

"3" => array(

"name" => "熱映中",

"method" => "movie",

),

)

*/

$data = $dbAdapter->query("

SELECT method, id, name FROM category

")->fetchAll(PDO::FETCH_UNIQUE | PDO::FETCH_ASSOC);

//var_dump($data);

/*

array(

"service" => array(

"id" => "1",

"name" => "HBO",

),

"movie" => array(

"id" => "3",

"name" => "熱映中",

),

)

*/

$data = $dbAdapter->query("

SELECT id, name, method FROM category

")->fetchAll(PDO::FETCH_UNIQUE | PDO::FETCH_COLUMN);

//var_dump($data);

/*

array(

"1" => "HBO",

"2" => "本周新片",

"3" => "熱映中",

)

*/

$data = $dbAdapter->query("

SELECT method, name, id FROM category

")->fetchAll(PDO::FETCH_UNIQUE | PDO::FETCH_COLUMN);

//var_dump($data);

/*

array(

"service" => "HBO",

"movie" => "熱映中",

)

*/

$data = $dbAdapter->query("

SELECT method, id, name FROM category

")->fetchAll( PDO::FETCH_ASSOC | PDO::FETCH_GROUP);

//var_dump($data);

/*

array(

"service" => array(

array(

"id" => "1"

"name" => "HBO"

),

)

"movie" => array(

array(

"id" => "2"

"name" => "本周新片"

),

array(

"id" => "3"

"name" => "熱映中"

),

)

)

*/

$data = $dbAdapter->query("

SELECT method, name, id FROM category

")->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_COLUMN);

//var_dump($data);

/*

array(

"service" => array(

"HBO"

),

"movie" => array(

"本周新片"

"熱映中"

),

)

*/

$data = $dbAdapter->query("

SELECT id, name, method FROM category

")->fetchAll(PDO::FETCH_OBJ);

//var_dump($data);

/*

array(

stdClass{

public $id = "1";

public $name = "HBO";

public $method = "service";

},

stdClass{

public $id = "2";

public $name = "本周新片";

public $method = "movie";

},

stdClass{

public $id = "3";

public $name = "熱映中";

public $method = "movie";

},

)

*/

class Category_1 {}

$data = $dbAdapter->query("

SELECT id, name, method FROM category

")->fetchAll(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE, "Category_1");

//var_dump($data);

/*

array(

Category_1{

public $id = "1";

public $name = "HBO";

public $method = "service";

},

Category_1{

public $id = "2";

public $name = "本周新片";

public $method = "movie";

},

Category_1{

public $id = "3";

public $name = "熱映中";

public $method = "movie";

},

),

*/

class Category_2 {

public $name;

public $method;

public function __construct() {}

public function __set($name, $value ){}

}

$data = $dbAdapter->query("

SELECT id, name, method FROM category

")->fetchAll(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE, "Category_2");

//var_dump($data);

/*

array(

Category_2{

public $name = "HBO";

public $method = "service";

},

Category_2{

public $name = "本周新片";

public $method = "movie";

},

Category_2{

public $name = "熱映中";

public $method = "movie";

},

)

*/


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 PHP技術大全 的精彩文章:

他棄近百萬年薪,為了讓你每月多拿1萬

TAG:PHP技術大全 |