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 Superglobals PHP While การไหลเวียน PHP For การไหลเวียน PHP ฟังก์ชัน PHP ตัวแปรเมจิก PHP namespaces 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 ค้นหาแบบ Real-time 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 รับคอลัมน์ที่ต้องการโดยระบุพารามิเตอร์คอลัมน์ดัชนี

ต้องการที่จะได้รับผลการตั้งค่าของค่าไม่ซ้ำกันในคอลัมน์เดียวที่คุณจะต้อง PDO :: FETCH_COLUMN และ PDO :: บิต FETCH_UNIQUE หรือ

หากต้องการกลับคอลัมน์ขึ้นอยู่กับค่าที่ระบุของอาเรย์จัดกลุ่มเราต้อง PDO :: FETCH_COLUMN และ PDO :: FETCH_GROUP บิตหรือ

fetch_argument
พารามิเตอร์ Fetch_style ขึ้นอยู่กับค่าของพารามิเตอร์นี้มีความหมายที่แตกต่างกัน:

  • PDO::FETCH_COLUMN : กลับสู่ศูนย์คอลัมน์การจัดทำดัชนี

  • PDO::FETCH_CLASS : คืนตัวอย่างของการเรียนที่ระบุคอลัมน์การทำแผนที่แต่ละแถวที่สอดคล้องกันในชั้นเรียนชื่อแอตทริบิวต์

  • PDO::FETCH_FUNC : คอลัมน์ของแต่ละแถวเป็นอาร์กิวเมนต์ฟังก์ชั่นที่ระบุและผลตอบแทนหลังจากเรียกฟังก์ชั่น

ctor_args
เมื่อพารามิเตอร์ fetch_style PDO :: FETCH_CLASS ตั้งแต่ความหมายของพารามิเตอร์ระดับนวกรรมิก


ราคาย้อนกลับ

PDOStatement :: fetchAll () ส่งกลับชุดผลลัพธ์ที่มีอาร์เรย์ของทุกสายที่เหลือ แถวของอาร์เรย์นี้แต่ละคนเป็นอาร์เรย์หรือค่าคอลัมน์หรือแอตทริบิวต์วัตถุสอดคล้องกับชื่อแต่ละคอลัมน์

ใช้วิธีการนี้เพื่อให้ได้ชุดผลขนาดใหญ่จะทำให้เกิดภาระระบบและอาจใช้เวลามากของทรัพยากรเครือข่าย ดึงข้อมูลทั้งหมดและการใช้งาน PHP ในการทำงานมันจะดีกว่าที่จะต้องพิจารณาการใช้บริการฐานข้อมูลในการจัดการกับผลการตั้งค่า ยกตัวอย่างเช่นก่อนและดึงข้อมูลผ่านกระบวนการ PHP ในการกำหนดผลกับสถานที่และคำสั่ง ORDER BY ใน SQL


ตัวอย่าง

ได้รับทั้งหมดของแถวที่เหลืออยู่ในชุดผลลัพธ์

<?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
)

ตามการจัดกลุ่มแยกต่างหากค่าทั้งหมด

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงวิธีการที่จะส่งกลับค่าคอลัมน์อาเรย์ศูนย์ระบุขึ้นอยู่กับผลของแพ็คเก็ต อาร์เรย์มีสามปุ่ม: แอปเปิ้ลและลูกแพร์อาร์เรย์กลับมีสองสีที่แตกต่างกันในขณะที่แตงโมกลับอาร์เรย์มีเพียงหนึ่งสี

<?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"
  }
}

แถวในผลแต่ละ instantiate ชั้นเรียน

Liezi ด้านล่างนี้แสดง PDO :: FETCH_CLASS Gets พฤติกรรมสไตล์

<?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"
  }
}

แต่ละบรรทัดเรียกฟังก์ชัน

Liezi ด้านล่างนี้แสดง PDO :: FETCH_FUNC Gets พฤติกรรมสไตล์

<?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 อ้างอิง