ให้เรตสมาชิก: 5 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งาน
 

ความหมายและการใช้งานฟังก์ชัน mysqli_store_result()

 

          ฟังก์ชัน mysqli_store_result() เป็นฟังก์ชันที่ใช้ในการโอนชุดผลลัพธ์จากการค้นหาครั้งล่าสุด

 

ลักษณะในการใช้งานมี 2 สไตล์ ดังนี้

  1. สไตล์ OO: Object oriented style(โอโอ: อ็อปเจ็กออเล็นเต็ด สไตล์) 
    mysqli_result mysqli::store_result ([ int $option ] )​
  2. สไตล์กระบวนการ (Procedural style(โพรเซโดะเรา สไตล์)) 
    mysqli_result mysqli_store_result ( mysqli $link [, int $option ] )​

 

โดยกำหนดให้

                   link แทน ตัวระบุการเชื่อมโยงที่ส่งกลับโดย mysqli_connect () หรือ mysqli_init()

                   Option แทน ตัวเลือกที่ผู้ใช้ต้องการตั้งค่า ตัวเลือกที่ถูกต้องคือ MYSQLI_STORE_RESULT_COPY_DATA คัดลอกผลลัพธ์จากบัฟเฟอร์ภายใน mysqlnd(มายเอสคิวแอลเอ็นดี) เป็นตัวแปร PHP(พีเอชพี) ที่เรียกใช้โดยค่าเริ่มต้น mysqlnd(มายเอสคิวแอลเอ็นดี) จะใช้ตรรกะอ้างอิงเพื่อหลีกเลี่ยงการคัดลอกและทำซ้ำผลลัพธ์ที่จัดขึ้นในหน่วยความจำ สำหรับชุดผลลัพธ์บางอย่างตัวอย่างเช่นชุดผลลัพธ์กับแถวเล็ก ๆ วิธีการคัดลอกสามารถลดการใช้หน่วยความจำโดยรวมได้เนื่องจากตัวแปร PHP(พีเอชพี) ที่มีการเก็บข้อมูลอาจได้รับการเผยแพร่ออกไปก่อนหน้านี้ (ใช้ได้กับ mysqlnd(มายเอสคิวแอลเอ็นดี) เท่านั้นเนื่องจาก PHP(พีเอชพี) 5.6.0)

 

ตัวอย่าง สไตล์ OO: Object oriented style(โอโอ: อ็อปเจ็กออเล็นเต็ด สไตล์) 

<?php
$mysqli = new mysqli("localhost", "root", "", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("ไม่สามารถเชื่อมต่อฐานข้อมูลได้: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT user();";
$query .= "SELECT first_Name FROM user ORDER BY id LIMIT 2, 1";

/* execute multi query */
if ($mysqli->multi_query($query)) {
    do {
        /* store first result set */
        if ($result = $mysqli->store_result()) {
            while ($row = $result->fetch_row()) {
                printf("%s\n", $row[0]);
            }
            $result->free();
        }
        /* print divider */
        if ($mysqli->more_results()) {
            printf("-*-*-*-*-*-*-*-*-\n");
        }
    } while ($mysqli->next_result());
}

/* close connection */
$mysqli->close();
?>

 

ผลลัพธ์

ภาพแสดงผลลัพธ์ของการใช้งานฟังก์ชัน  mysqli_store_result ในสไตล์ oo:Object oriented style
ภาพแสดงผลลัพธ์ของการใช้งานฟังก์ชัน mysqli_store_result ในสไตล์ oo:Object oriented style

 

ตัวอย่างการใช้งานฟังก์ชัน mysqli_store_result() ในสไตล์กระบวนการ (Procedural style(โพรเซโดะเรา สไตล์)) 

 

<?php
$link = mysqli_connect("localhost", "root", "", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("ไม่สามารถเชื่อมต่อฐานข้อมูลได้: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT user();";
$query .= "SELECT first_Name FROM user ORDER BY id LIMIT 3, 1";

/* execute multi query */
if (mysqli_multi_query($link, $query)) {
    do {
        /* store first result set */
        if ($result = mysqli_store_result($link)) {
            while ($row = mysqli_fetch_row($result)) {
                printf("%s\n", $row[0]);
            }
            mysqli_free_result($result);
        }
        /* print divider */
        if (mysqli_more_results($link)) {
            printf("-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-\n");
        }
    } while (mysqli_next_result($link));
}

/* close connection */
mysqli_close($link);
?>

ผลลัพธ์

ภาพแสดงการใช้งานฟังก์ชัน mysqli_store_result() ในสไตล์กระบวนการ (Procedural style)
ภาพแสดงการใช้งานฟังก์ชัน mysqli_store_result() ในสไตล์กระบวนการ (Procedural style)

 

ข้อมูลอ้างอิง: php.net

                  : dev.mysql.com

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ฟังก์ชัน PHP กับ MySQL

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
อยากทราบวิธีตรวจสอบว่าอาเรย์ 2 ชุดมีค่าเหมือนกันหรือเปล่า ครับ
โดย waterwelon อ 25 ก.พ. 2020 3:32 pm บอร์ด Programming - PHP
0
22
อ 25 ก.พ. 2020 3:32 pm โดย waterwelon
ความแข็งแกร่ง
โดย noppadonsk อ 25 ก.พ. 2020 11:13 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
อ 25 ก.พ. 2020 11:13 am โดย noppadonsk
อยากทราบวิธีตรวจสอบข้อมูลครับ
โดย waterwelon อ 25 ก.พ. 2020 10:58 am บอร์ด Programming - PHP
2
27
อ 25 ก.พ. 2020 11:13 am โดย Ittichai_chupol
Welcome to International school in Chonburi.
โดย tomtam1771 อ 25 ก.พ. 2020 12:30 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
7
อ 25 ก.พ. 2020 12:30 am โดย tomtam1771
วิธีปิด ไม่ได้ teamviewerd ทำงานบน Ubunto
โดย mindphp จ 24 ก.พ. 2020 4:31 pm บอร์ด Linux - Web Server
0
27
จ 24 ก.พ. 2020 4:31 pm โดย mindphp
แก้ปัญหา Vmware ของเรารัน Host ไม่ได้ เจอข้อความ This virtual machine is configured for 64-bit guest operating systems
โดย mindphp จ 24 ก.พ. 2020 3:37 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
723
จ 24 ก.พ. 2020 3:37 am โดย mindphp
จะทำอย่างไรให้ ค่าในอาเรย์ที่ซ้ำกันเหลือแค่ค่าเดียวครับ
โดย waterwelon ศ 21 ก.พ. 2020 2:04 pm บอร์ด Programming - PHP
2
47
ศ 21 ก.พ. 2020 2:34 pm โดย waterwelon
ความรุนแรงในเด็กๆ
โดย noppadonsk ศ 21 ก.พ. 2020 11:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
26
ศ 21 ก.พ. 2020 11:47 am โดย noppadonsk
องค์ประกอบพื้นฐานของการจัดทำ Extension ใน phpBB 3 ส่วนของ admin
โดย Ittichai_chupol พฤ 20 ก.พ. 2020 1:56 pm บอร์ด PHP Knowledge
0
30
พฤ 20 ก.พ. 2020 1:56 pm โดย Ittichai_chupol
ประทานโทษ
โดย noppadonsk พฤ 20 ก.พ. 2020 12:54 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
16
พฤ 20 ก.พ. 2020 12:54 pm โดย noppadonsk
มาแล้ว Plugin System MooZiiCart Auto Close สำหรับตั้งเวลาเปิดปิดระบบการสั่งซื้อสินค้าออนไลน์
โดย prmindphp พ 19 ก.พ. 2020 6:40 pm บอร์ด MindPHP News & Feedback
0
89
พ 19 ก.พ. 2020 6:40 pm โดย prmindphp
ถ้าคุณต้องเลือก
โดย noppadonsk พ 19 ก.พ. 2020 11:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
23
พ 19 ก.พ. 2020 11:22 am โดย noppadonsk
อยากจะทราบว่าวิธีการแสดงค่าอาเรย์แต่ล่ะค่าครับ
โดย waterwelon พ 19 ก.พ. 2020 11:04 am บอร์ด Programming - PHP
2
46
พ 19 ก.พ. 2020 11:58 am โดย thatsawan
คลายเครียด
โดย noppadonsk อ 18 ก.พ. 2020 2:50 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
42
อ 18 ก.พ. 2020 2:50 pm โดย noppadonsk
7 สิ่งที่ต้องปรับปรุงเพื่อลดค่า Bounce Rate บนหน้าเว็บไซต์
โดย phasamon อ 18 ก.พ. 2020 10:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
33
อ 18 ก.พ. 2020 10:22 am โดย phasamon
อยากให้ธุรกิจเป็นที่รู้จักบนโลกออนไลน์ ลองหาบริษัทรับทำ SEO ดูซิ !
โดย totheworld จ 17 ก.พ. 2020 3:34 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
73
จ 17 ก.พ. 2020 3:34 pm โดย totheworld
สี่เหตุผลที่ควรปรับปรุงเว็บไซต์
โดย phasamon จ 17 ก.พ. 2020 2:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
53
จ 17 ก.พ. 2020 2:05 pm โดย phasamon
อย่าได้พลาดเชียว
โดย noppadonsk จ 17 ก.พ. 2020 10:52 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
28
จ 17 ก.พ. 2020 10:52 am โดย noppadonsk
วิธีการแก้ไขปํญหา undefined index กรณีกำหนดเงือนไขเทียบค่าอาร์เรย์
โดย Ittichai_chupol ศ 14 ก.พ. 2020 5:50 pm บอร์ด PHP Knowledge
0
128
ศ 14 ก.พ. 2020 5:50 pm โดย Ittichai_chupol
เรื่องน่าเศร้า
โดย noppadonsk ศ 14 ก.พ. 2020 10:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
81
ศ 14 ก.พ. 2020 10:19 am โดย noppadonsk