10.2. Zend_Db_Statement

Ç×10.1. ¡¸Zend_Db_Adapter¡¹ ±×¸®°í ¼³¸íÇß´Ù fetchAll() (ÀÌ)³ª insert() (¿Í)°ú °°ÀÌ Æí¸®ÇÑ ¸Þ¼Òµå À̿ܿ¡µµ, ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î, º¸´Ù À¯¿¬ÇÏ°Ô Äõ¸®ÀÇ ½ÇÈ¿³ª °á°úÀÇ ÃëµæÀ» ÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ¿©±â¿¡¼­´Â, ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®¸¦ ÃëµæÇØ ±× ¸Þ¼Òµå¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù.

Zend_Db_Statement (Àº)´Â, PHP Data Objects È®Àå ¸ðµâÀÇ PDOStatement ¿ÀºêÁ§Æ®¸¦ ±âÃÊ·Î ÇÑ °ÍÀÔ´Ï´Ù.

10.2.1. ½ºÅ×ÀÌÆ®¸ÕÆ®ÀÇ ÀÛ¼º

Åë»óÀº, ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®´Â µ¥ÀÌŸº£À̽º ¾î´ðÅÍ Å¬·¡½ºÀÇ query() ¸Þ¼ÒµåÀÇ µ¹¾Æ°¡ °ªÀ¸·Î ÇØ¼­ ÃëµæÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â, ÀÓÀÇÀÇ SQL ¹®ÀåÀ» ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ÃÖÃÊÀÇ Àμö¿¡´Â SQL ¹®ÀåÀ» ÁöÁ¤ÇØ, ¿É¼ÇÀÇ µÎ¹øÂ°ÀÇ Àμö¿¡´Â SQL ¹®ÁßÀÇ Ç÷¹À̽ºÈ¦´õ¸¦ ¿Å°Ü³õ´Â´Ù ¹ÙÀÎµå º¯¼öÀÇ ¹è¿­À» ÁöÁ¤ÇÕ´Ï´Ù.

·Ê 10.32. query() ¿¡ ÀÇÇÑ´Ù SQL ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®ÀÇ ÀÛ¼º


<?php
$stmt 
$db->query('SELECT * FROM bugs WHERE reported_by = ? AND bug_status = ?',
                array(
'goofy''FIXED'));

½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®´Â, ÁغñµÇ¾ú´Ù SQL ¹®Àå¿¡ ´ëÇØ¼­ º¯¼öÀÇ °ªÀ» ¹ÙÀεå ÇØ ÇÑ ¹ø ½ÇÇàÇÑ °Í¿¡ ´ëÀÀÇÕ´Ï´Ù. ±× ½ºÅ×ÀÌÆ®¸ÕÆ®°¡ SELECT Äõ¸® ȤÀº ¾î¶°ÇÑ °á°ú ¼¼Æ®¸¦ µ¹·ÁÁÖ´Â °ÍÀ̾úÀ» °æ¿ì´Â, ¹ú½á °á°ú¸¦ ÃëµæÇÒ Áغñ°¡ µÇ¾î ÀÖ½À´Ï´Ù.

½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®¸¦ constructor¡¡ ¡¡ À¸·ÎºÎÅÍ ÀÛ¼ºÇÒ ¼öµµ ÀÖ½À´Ï´Ù¸¸, º°·Î ÀϹÝÀûÀÌÁö´Â ¾Ê½À´Ï´Ù.ÀÌ ¿ÀºêÁ§Æ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼Òµå´Â ¾ø±â ¶§¹®¿¡, ƯÁ¤ÀÇ ½ºÅ×ÀÌÆ®¸ÕÆ® Ŭ·¡½º¸¦ Àоîµé¿© ±× constructor¡¡ ¡¡ À» ÄÝ ÇÏ°Ô µË´Ï´Ù. constructor¡¡ ¡¡ ÀÇ ÃÖÃÊÀÇ Àμö¿¡´Â ¾î´ðÅÍ ¿ÀºêÁ§Æ®¸¦ ÁöÁ¤ÇØ, µÎ¹øÂ°ÀÇ Àμö¿¡´Â SQL ¹®ÀåÀ» ¹®ÀÚ¿­·Î ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ½ºÅ×ÀÌÆ®¸ÕÆ®´Â, ÁغñµÈ °Í¸¸À¸·Î ¾ÆÁ÷ ½ÇÇàµÇ¾î ÀÖÁö ¾ÊÀº »óŰ¡ µË´Ï´Ù.

·Ê 10.33. SQL ½ºÅ×ÀÌÆ®¸ÕÆ®ÀÇ constructor¡¡ ¡¡ ÀÇ »ç¿ë


<?php
require_once 'Zend/Db/Statement/Mysqli.php';

$sql 'SELECT * FROM bugs WHERE reported_by = ? AND bug_status = ?';

$stmt = new Zend_Db_Statement_Mysqli($db$sql);

10.2.2. ½ºÅ×ÀÌÆ®¸ÕÆ®ÀÇ ½ÇÇà

½ºÅ×ÀÌÆ®¸ÕÆ®¸¦ constructor¡¡ ¡¡ À¸·ÎºÎÅÍ ÀÛ¼ºÇßÀ» °æ¿ì³ª, ÇÑ ¹ø ½ÇÇàÇÑ ½ºÅ×ÀÌÆ®¸ÕÆ®¸¦ Çѹø ´õ ½ÇÇàÇÏ°í ½ÍÀº °æ¿ì µîÀº, ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®¸¦ ½º½º·Î ½ÇÇàÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ±× °æ¿ì´Â, ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®ÀÇ execute() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù.ÀÌ ¸Þ¼Òµå¿¡ °Ç³×ÁÖ´Â Àμö´Â, ½ºÅ×ÀÌÆ®¸ÕÆ®ÁßÀÇ Ç÷¹À̽ºÈ¦´õ¿¡ ¹ÙÀεå ÇÏ´Â º¯¼öÀÇ °ªÀÇ ¹è¿­ÀÌ µË´Ï´Ù.

À§Ä¡ ÁöÁ¤¿¡ ÀÇÇÑ ÆÄ¶ó¹ÌÅÍ, Áï Àǹ® ºÎÈ£ (?) ±×¸®°í ÆÄ¶ó¹ÌÅ͸¦ ÁöÁ¤ÇØ ÀÖ´Â °æ¿ì´Â, ¹ÙÀεå ÇÏ´Â °ªÀº Åë»óÀÇ ¹è¿­·Î °Ç³×ÁÝ´Ï´Ù.

·Ê 10.34. À§Ä¡ ÁöÁ¤ ÆÄ¶ó¹ÌÅÍ¿¡ ÀÇÇÑ ½ºÅ×ÀÌÆ®¸ÕÆ®ÀÇ ½ÇÇà


<?php
$sql 
'SELECT * FROM bugs WHERE reported_by = ? AND bug_status = ?';

$stmt = new Zend_Db_Statement_Mysqli($db$sql);

$stmt->execute(array('goofy''FIXED'));

À̸§ ´ÙÇØ ÆÄ¶ó¹ÌÅÍ, Áï ¼±µÎ¿¡ ÄÚ·Ð (:) (À»)¸¦ ºÙÀÎ ½Äº°ÀÚ·Î ÆÄ¶ó¹ÌÅ͸¦ ÁöÁ¤ÇØ ÀÖ´Â °æ¿ì´Â, ¹ÙÀεå ÇÏ´Â °ªÀ» ¿¬»ó ¹è¿­·Î °Ç³×ÁÝ´Ï´Ù. ¹è¿­ÀÇ Å°°¡, ÆÄ¶ó¹ÌÅÍÀÇ À̸§¿¡ ´ëÀÀÇÕ´Ï´Ù.

·Ê 10.35. À̸§ ´ÙÇØ ÆÄ¶ó¹ÌÅÍ¿¡ ÀÇÇÑ ½ºÅ×ÀÌÆ®¸ÕÆ®ÀÇ ½ÇÇà


<?php
$sql 
'SELECT * FROM bugs WHERE reported_by = :reporter AND bug_status = :status';

$stmt = new Zend_Db_Statement_Mysqli($db$sql);

$stmt->execute(array(':reporter' => 'goofy'':status' => 'FIXED'));

PDO ÀÇ ½ºÅ×ÀÌÆ®¸ÕÆ®´Â À§Ä¡ ÁöÁ¤ ÆÄ¶ó¹ÌÅÍ¿Í À̸§ ´ÙÇØ ÆÄ¶ó¹ÌÅÍÀÇ ¾çÂÊ ¸ðµÎ¸¦ ¼­Æ÷Æ®Çϰí ÀÖ½À´Ï´Ù. ±×·¯³ª, ÇϳªÀÇ SQL Áß(¾È)¿¡¼­ ¾çÂÊ ¸ðµÎ¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. Zend_Db_Statement Ŭ·¡½º¾È¿¡´Â PDO (À»)¸¦ »ç¿ëÇϰí ÀÖÁö ¾Ê´Â °Íµµ ÀÖ½À´Ï´Ù¸¸, ±×·¯ÇÑ ¾È¿¡´Â ¾î´ÀÂÊÀ̵ç ÀÏÁ¾·ùÀÇ Çü½ÄÀÇ ÆÄ¶ó¹ÌÅÍ ¹Û¿¡ ¼­Æ÷Æ®ÇÏÁö ¾Ê´Â °Íµµ ÀÖÀ»Áöµµ ¸ð¸¨´Ï´Ù.

10.2.3. SELECT ¹®ÀåÀ¸·ÎºÎÅÍÀÇ °á°úÀÇ Ãëµæ

½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®ÀÇ ¸Þ¼Òµå¸¦ ÄÝ ÇÏ´Â °ÍÀ¸·Î, SQL ¹®ÀåÀÇ °á°ú ¼¼Æ®·ÎºÎÅÍ ÇàÀ» ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù. SELECT,SHOW,DESCRIBE ±×¸®°í EXPLAIN µîÀÇ ½ºÅ×ÀÌÆ®¸ÕÆ®°¡ °á°ú ¼¼Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. INSERT,UPDATE ±×¸®°í DELETE µîÀÇ ½ºÅ×ÀÌÆ®¸ÕÆ®´Â °á°ú ¼¼Æ®¸¦ µ¹·ÁÁÖÁö ¾Ê½À´Ï´Ù. ÈÄÀÚ¿Í °°Àº SQL ¹®Àåµµ Zend_Db_Statement ±×¸®°í ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù¸¸, ±× °á°ú·ÎºÎÅÍ ÇàÀ» ÃëµæÇÏ´Â ¸Þ¼Òµå¸¦ ÄÝ ÇÒ ¼ö ¾ø½À´Ï´Ù.

10.2.3.1. °á°ú ¼¼Æ®·ÎºÎÅÍÀÇ ´ÜÀÏÀÇ ÇàÀÇ Ãëµæ

°á°ú ¼¼Æ®·ÎºÎÅÍ ´ÜÀÏÀÇ ÇàÀ» ÃëµæÇÏ·Á¸é , ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®ÀÇ fetch() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼ÒµåÀÇ ¼¼ °³ÀÇ Àμö´Â, ¸ðµÎ »ý·« °¡´ÉÇÕ´Ï´Ù.

  • ÃÖÃÊÀÇ Àμö´Â Ãëµæ Çü½Ä (À»)¸¦ ÁöÁ¤ÇÕ´Ï´Ù.À̰ÍÀº, µ¹¾Æ°¡ °ªÀÇ ±¸Á¶¸¦ °áÁ¤ÇÏ´Â °ÍÀÔ´Ï´Ù. ¿©±â¼­ ÁöÁ¤ÇÒ ¼ö ÀÖ´Â °ª°ú ´ëÀÀÇÏ´Â µ¹¾Æ°¡ °ª¿¡ ´ëÇØ¼­´Â Ç×10.1.3.2. ¡¸ÆäÄ¡ ¸ðµåÀÇ º¯°æ¡¹ (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ.

  • µÎ¹øÂ°ÀÇ Àμö·Î ÁöÁ¤ÇÏ´Â °ÍÀº, Ä¿¼­ÀÇ Á¾·ù ÀÔ´Ï´Ù.µðÆúÆ®´Â Zend_Db::FETCH_ORI_NEXT ±×¸®°í,fetch() (À»)¸¦ ÄÝ ÇÒ ¶§¸¶´Ù RDBMS ÇÏÁö¸¸ µ¹·ÁÁÖ´Â ¼ø¼­·Î ´ÙÀ½ÀÇ ÇàÀ» µ¹·ÁÁشٰí ÇÏ´Â °ÍÀÔ´Ï´Ù.

  • 3¹øÂ°ÀÇ Àμö·Î ÁöÁ¤ÇÏ´Â °ÍÀº ¿ÀÇÁ¼Â ÀÔ´Ï´Ù. Ä¿¼­ÀÇ Á¾·ù°¡ Zend_Db::FETCH_ORI_ABS ÀÇ °æ¿ì, À̰ÍÀº °á°ú ¼¼Æ®¾ÈÀÇ ¸îÇà°¸¦ µ¹·ÁÁÖ´ÂÁö¸¦ ³ªÅ¸³À´Ï´Ù. Ä¿¼­ÀÇ Á¾·ù°¡ Zend_Db::FETCH_ORI_REL ÀÇ °æ¿ì, À̰ÍÀº Á÷Àü¿¡ fetch() (À»)¸¦ ÄÝ ÇßÀ» ¶§ÀÇ À§Ä¡·ÎºÎÅÍÀÇ »ó´ë À§Ä¡¸¦ ³ªÅ¸³À´Ï´Ù.

¹ú½á °á°ú ¼¼Æ®ÀÇ ¸ðµç ÇàÀÌ ÃëµæÀÌ ³¡³­ »óÅÂÀÎ °æ¿ì´Â fetch() ÇÏ false (À»)¸¦ µ¹·ÁÁÝ´Ï´Ù.

·Ê 10.36. ·çÇÁ³»¿¡¼­ÀÇ fetch() ÀÇ »ç¿ë


<?php
$stmt 
$db->query('SELECT * FROM bugs');

while (
$row $stmt->fetch()) {
    echo 
$row['bug_description'];
}

PDOStatement::fetch() ÀÇ ¸Þ´º¾óµµ ÂüÁ¶ÇØ ÁֽʽÿÀ.

10.2.3.2. °á°ú ¼¼Æ® ÀüüÀÇ Ãëµæ

°á°ú ¼¼Æ®ÀÇ ¸ðµç ÇàÀ» ÇÑ ¹ø¿¡ ÃëµæÇÏ·Á¸é , fetchAll() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. À̰ÍÀº, ·çÇÁ³»¿¡¼­ fetch() ¸Þ¼Òµå¸¦ ¹Ýº¹ÇØ »ç¿ëÇØ ¸ðµç ÇàÀ» ¹è¿­¿¡ °Ý³³ÇÏ´Â °Í°ú °°Àº °ÍÀÔ´Ï´Ù. fetchAll() ¸Þ¼Òµå¿¡´Â µÎ Àμö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÃÖÃÊÀÇ Àμö´Â, ¹æ±ÝÀü ¼³¸íÇÑ °Í°ú °°Àº Ãëµæ Çü½ÄÀÔ´Ï´Ù. µÎ¹øÂ°ÀÇ Àμö´Â, µ¹·ÁÁÖ´Â Ä÷³ ¹øÈ£¸¦ ÁöÁ¤ÇÕ´Ï´Ù.À̰ÍÀº ÃÖÃÊÀÇ Àμö°¡ Zend_Db::FETCH_COLUMN ÀÎ °æ¿ì¿¡ »ç¿ëÇÕ´Ï´Ù.

·Ê 10.37. fetchAll() ÀÇ »ç¿ë¹ý


<?php
$stmt 
$db->query('SELECT * FROM bugs');

$rows $stmt->fetchAll();

echo 
$rows[0]['bug_description'];

PDOStatement::fetchAll() ÀÇ ¸Þ´º¾óµµ ÂüÁ¶ÇØ ÁֽʽÿÀ.

10.2.3.3. Ãëµæ Çü½ÄÀÇ º¯°æ

µðÆúÆ®¿¡¼­´Â, ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®°¡ °á°ú ¼¼Æ®ÀÇ ÇàÀ» µ¹·ÁÁÖ´Â Çü½ÄÀº ¿¬»ó ¹è¿­·Î, Ä÷³¸í°ú ±× Ä÷³ÀÇ °ªÀ» °ü·ÃÁöÀº °ÍÀÌ µË´Ï´Ù. °á°ú¸¦ ´Ù¸¥ Çü½Ä¿¡¼­ µ¹·ÁÁÖµµ·Ï(µíÀÌ) ÁöÁ¤ÇÏ´Â ¹æ¹ýÀº, ¾î´ðÅÍ Å¬·¡½ºÀÇ °æ¿ì¿Í °°½À´Ï´Ù. ½ºÅ×ÀÌÆ®¸ÕÆ® ¿ÀºêÁ§Æ®ÀÇ setFetchMode() ¸Þ¼Òµå·Î, Ãëµæ Çü½ÄÀ» ÁöÁ¤ÇÕ´Ï´Ù.ÁöÁ¤ÇÒ ¼ö ÀÖ´Â °ªÀº,Zend_Db Ŭ·¡½ºÀÇ Á¤¼ö FETCH_ASSOC,FETCH_NUM,FETCH_BOTH,FETCH_COLUMN ±×¸®°í FETCH_OBJ ÀÔ´Ï´Ù. À̰͵鿡 ´ëÇÑ ÀÚ¼¼ÇÑ °ÍÀº Ç×10.1.3.2. ¡¸ÆäÄ¡ ¸ðµåÀÇ º¯°æ¡¹ (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ. À̰ÍÀ» ÁöÁ¤Çϸé, ±× ÀÌÈÄÀÇ fetch() ¸Þ¼Òµå³ª fetchAll() ¸Þ¼Òµå·Î ±× Çü½ÄÀ» »ç¿ëÇÏ°Ô µË´Ï´Ù.

·Ê 10.38. Ãëµæ Çü½ÄÀÇ ¼³Á¤


<?php
$stmt 
$db->query('SELECT * FROM bugs');

$stmt->setFetchMode(Zend_Db::FETCH_NUM);

$rows $stmt->fetchAll();

echo 
$rows[0][0];

PDOStatement::setFetchMode() ÀÇ ¸Þ´º¾óµµ ÂüÁ¶ÇØ ÁֽʽÿÀ.

10.2.3.4. °á°ú ¼¼Æ®·ÎºÎÅÍÀÇ ´ÜÀÏÀÇ Ä÷³ÀÇ Ãëµæ

°á°ú ¼¼Æ®ÀÇ ´ÙÀ½ÀÇ ÇàÀ¸·ÎºÎÅÍ ´ÜÀÏÀÇ Ä÷³ÀÇ °ªÀ» ÃëµæÇÏ·Á¸é fetchColumn() (À»)¸¦ »ç¿ëÇÕ´Ï´Ù. ÃëµæÇÏ´Â Ä÷³ÀÇ À§Ä¡¸¦ ³ªÅ¸³»´Â À妽º¸¦ Àμö·Î ÁöÁ¤ÇÕ´Ï´Ù. »ý·« ÇßÀ» °æ¿ìÀÇ µðÆúÆ®´Â 0 µË´Ï´Ù.ÀÌ ¸Þ¼Òµå´Â, ½ºÄ®¶óÄ¡¸¦ µ¹·ÁÁÝ´Ï´Ù.¸¸¾à °á°ú ¼¼Æ®ÀÇ ¸ðµç ÇàÀÌ ÀÌ¹Ì ÃëµæÀÌ ³¡³­ »óÅÂÀÎ °æ¿ì´Â false (À»)¸¦ µ¹·ÁÁÝ´Ï´Ù.

ÀÌ ¸Þ¼ÒµåÀÇ µ¿ÀÛÀº, ¾î´ðÅÍ Å¬·¡½ºÀÇ fetchCol() ¸Þ¼Òµå¿Í´Â ´Ù¸¥ °Í¿¡ ÁÖÀÇÇսôÙ. ½ºÅ×ÀÌÆ®¸ÕÆ® Ŭ·¡½ºÀÇ fetchColumn() ¸Þ¼Òµå´Â, ´ÜÀÏÀÇ ÇàÀÇ ´ÜÀÏÀÇ °ªÀ» µ¹·ÁÁÝ´Ï´Ù.¾î´ðÅÍÀÇ fetchCol() ¸Þ¼Òµå´Â, °ªÀÇ ¹è¿­À» µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº, °á°ú ¼¼Æ®ÀÇ ¸ðµç ÇàÀÇ, ÃÖÃÊÀÇ Ä÷³ÀÇ °ªÀ» Áý°èÇÑ °ÍÀÔ´Ï´Ù.

·Ê 10.39. fetchColumn() ÀÇ »ç¿ë¹ý


<?php
$stmt 
$db->query('SELECT bug_id, bug_description, bug_status FROM bugs');

$bug_status $stmt->fetchColumn(2);

PDOStatement::fetchColumn() ÀÇ ¸Þ´º¾óµµ ÂüÁ¶ÇØ ÁֽʽÿÀ.

10.2.3.5. ¿ÀºêÁ§Æ® Çü½ÄÀ¸·ÎÀÇ ÇàÀÇ Ãëµæ

°á°ú ¼¼Æ®ÀÇ ÇàÀ» ¿ÀºêÁ§Æ®·Î¼­ ÃëµæÇÏ·Á¸é fetchObject() (À»)¸¦ »ç¿ëÇÕ´Ï´Ù.ÀÌ ¸Þ¼ÒµåÀÇ Àμö´Â µÎ °³·Î, ¸ðµÎ »ý·« °¡´ÉÇÕ´Ï´Ù.ÃÖÃÊÀÇ Àμö¿¡´Â, µ¹¾Æ°¡ °ªÀÇ ¿ÀºêÁ§Æ®ÀÇ Å¬·¡½º¸íÀ» ÁöÁ¤ÇÕ´Ï´Ù. µðÆúÆ®´Â 'stdClass' ÀÔ´Ï´Ù.µÎ¹øÂ°ÀÇ Àμö¿¡´Â ¹è¿­À» ÁöÁ¤ÇÕ´Ï´Ù. À̰ÍÀº, ÃÖÃÊÀÇ Àμö·Î ÁöÁ¤ÇÑ Å¬·¡½ºÀÇ constructor¡¡ ¡¡ ¿¡ °Ç³×ÁÖ´Â Àμö°¡ µË´Ï´Ù.

·Ê 10.40. fetchObject() ÀÇ »ç¿ë¹ý


<?php
$stmt 
$db->query('SELECT bug_id, bug_description, bug_status FROM bugs');

$obj $stmt->fetchObject();

echo 
$obj->bug_description;

PDOStatement::fetchObject() ÀÇ ¸Þ´º¾óµµ ÂüÁ¶ÇØ ÁֽʽÿÀ.