• ÇÁ¸®Ä«¿îÅÍ
  • Ç÷¡½ÃºÏ
  • ÇÁ¸®º¸µå
  • Àü±¤ÆÇ
  • À¥°øºÎ¹æ
  • Ä¿¹Â´ÏƼ
[PHP] DB.php class Manual 2009.06.02 15:48
±Û¾´ÀÌ : ¿î¿µÀÚ Á¶È¸ : 514 Ãßõ : 0
  1. DB.php
      php.ini ÆÄÀÏ¿¡ "include_path"¿¡ '/usr/local/lib/php' °¡ µé¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.
    • <?PHP include_once "DB.php"$dbh = DB::connect("mysql://user:pass@localhost/dbname");if (DB::isError($dbh)) {          // ¿À·ùÀÎÁö °Ë»ç  print $dbh->getMessage();  exit;}$rsh = $dbh->getAll("SELECT * FROM test", DB_FETCHMODE_ASSOC);if (DB::isError($rsh) {           // ¿À·ùÀÎÁö °Ë»ç  print $dbh->getMessage();}if (is_Array($rsh)) {  foreach($rsh as $val) {    foreach($val as $key2 => $val2) {      print $key2 . "=" . $val2 ", ";    }    print "\n";  }}?>
  2. common.php
$dsn ? "data source name"
$dsn À̶õ ¼­¹ö¿Í ¿¬°áÇÏ´Â ¹®ÀÚ¿­ÀÌ´Ù. ´ÙÀ½Àº Àüü DSN ¿¹Á¦ÀÌ´Ù.
  ¿¹) phptype(dbsyntax)://username:password@protocol+hostspec/database
phptype://username:password@protocol+hostspec:110//usr/db_file.db
phptype://username:password@hostspec/database_name
phptype://username:password@hostspec
phptype://username@hostspec
phptype://hostspec/database
phptype://hostspec
phptype(dbsyntax)
phptype
mysql://user:passwd@mysql.domain.net/dbname

- phptype: Database backend used in PHP
    (mysql, odbc, fbsql, ibase, ifx, msql, mssql, oci8, pgsql, storage, sybase)
- dbsyntax: Database used with regards to SQL syntax etc.
- protocol: Communication protocol to use (tcp, unix etc.)
- hostspec: Host specification (hostname[:port])
- database: Database to use on the DBMS server
- username: User name for login
- password: Password for login
function connect($dsninfo, $persistent = false)
$dsninfo Á¤º¸¸¦ ÀÌ¿ëÇÏ¿© DBMS ¼­¹ö¿Í Á¢¼ÓÀ» ½Ãµµ ÇÑ´Ù. Á¤»óÀûÀÏ °æ¿ì DB_class_name ÀÇ Object ¸¦ Return ÇÑ´Ù. $persistent ¸¸¾à trueÀ̸é Áö¼ÓÀûÀÎ ¿¬°áÀ» ¼±ÅÃÇÑ´Ù. ¿À·ù ÀÏ°æ¿ì DB::isError()À» ÀÌ¿ë ÇÏ¿© ¿À·ù°¡ ¹ß»ý Çß´ÂÁö È®ÀÎÇÒ¼ö ÀÖ´Ù.
¿¹)
$dbh = DB::connect("mysql://user:pass@db.server.com/dbname");
if (DB::isError($dbh)) {
  print $dbh->getMessage();
}
function disconnect()
database ¿Í ¿¬°áÀ» Á¾·á ÇÑ´Ù. return °ªÀÌ true À̸é suesses, false À̸é not connected.
function setFetchMode($fetchmode)
fetchRow()¸¦ »ç¿ë ÇÒ¶§ ¹è¿­ÀÇ ÇüŸ¦ ¼³Á¤ÇÏ´Â ºÎºÐÀÔ´Ï´Ù. $fetchmode°¡ DB_FETCHMODE_ORDEREDÀÏ°æ¿ì¿¡´Â ¹è¿­ÀÇ index¸¦ [0],[1],[2].. Çü½ÄÀÌ°í DB_FETCHMODE_ASSOCÀÏ°Ü¿ì ¹è¿­ÀÇ index¸¦ FIELD À̸§À¸·Î ¸¸ µé¾î Áø´Ù ([idx],[name],[email],[address]...).
function getOne($query)
$query(SQL)À» ½ÇÇàÇÏ¿© óÀ½ °á°ú¹°ÀÇ Ã¹¹ø° °á°ú¸¦ ¾òÀ»¼ö ÀÖ´Ù. ¸¸¾à Error ÀÏ°æ¿ì DB::isError()¸¦ ÀÌ¿ëÇÏ¿© È®ÀÎ ÇÒ¼ö ÀÖ´Ù.
function getRow($query, $fetchmode)
$query(SQL)À» ½ÇÇàÇÏ¿© ù¹ø° Record °ªÀ» ¾òÀ»¼ö ÀÖ´Ù. ¸¸¾à Error ÀÏ°æ¿ì DB::isError()¸¦ ÀÌ¿ëÇÏ¿© È®ÀÎ ÇÒ¼ö ÀÖ´Ù.
function getCol($query, $col)
$query(SQL)À» ½ÇÇàÇÏ¿© Àüü RecordÀÇ $col ¹ø° (ÇʵåÀ̸§ÀÇ) °ªÀ» ¾òÀ»¼ö ÀÖ´Ù. '$col' °ªÀÌ ¼ýÀÚÀ̸é $col¹ø°ÀÇ Field Àüü¸¦ ¸»Çϸç, ¹®ÀÚ¿­ÀÏ°æ¿ì ¹®ÀÚ¿­¿¡ ÇØ´çÇÏ´Â Field Àüü °ªÀ» ¹è¿­·Î µÇµ¹·Á ÁØ´Ù. ¸¸¾à Error ÀÏ°æ¿ì DB::isError()¸¦ ÀÌ¿ëÇÏ¿© È®ÀÎ ÇÒ¼ö ÀÖ´Ù.
function getAll($query, $fetchmode)
$query(SQL)À» ½ÇÇàÇÏ¿© Àüü Record °ªÀ» ¾òÀ»¼ö ÀÖ´Ù. $fetchmode°¡ DB_FETCHMODE_ORDEREDÀÏ°æ¿ì¿¡´Â ¹è¿­ÀÇ index¸¦ [0],[1],[2].. Çü½ÄÀÌ°í DB_FETCHMODE_ASSOCÀÏ°Ü¿ì ¹è¿­ÀÇ index¸¦ FIELD À̸§À¸·Î ¸¸µé¾î Áø´Ù ([idx],[name],[email],[address]...).
¿¹) $row = $dbh->getAll("SELECT * FROM tableName", DB_FETCHMODE_ASSOC);
     $row[0][idx],[name],[email],[address]...
     $row[1][idx],[name],[email],[address]...
     $row[2][idx],[name],[email],[address]...
¸¸¾à Error ÀÏ°æ¿ì DB::isError()¸¦ ÀÌ¿ëÇÏ¿© È®ÀÎ ÇÒ¼ö ÀÖ´Ù.
function query($query)
$query(SQL)¸¦ ½ÇÇàÇÑ´Ù. RETURN °ªÀÌ DB_OK À̸é Á¤»óÀûÀ¸·Î 󸮵ȰÍÀ̸ç, Error ÀÏ°æ¿ì DB::isError()¸¦ ÀÌ¿ëÇÏ¿© È®ÀÎ ÇÒ¼ö ÀÖ´Ù. ±×¸®°í, SELECT & SHOW ÀÏ°æ¿ì DB_Result() Object ¸¦ ¹ÝȯÇÑ´Ù.
ÀλýÀº ª½À´Ï´Ù.
±×·¯¹Ç·Î ´Ù¸¥ »ç¶÷ÀÌ ¿ä±¸ÇÏ´Â »îÀ» »ì¸é¼­ ½Ã°£À» ³¶ºñÇؼ­´Â ¾È µË´Ï´Ù.
µ·°ú ¸í¿¹¸¦ ¾òÁö ¸øÇÏ´õ¶óµµ ³¡±îÁö ÀÚ½ÅÀÇ ±æÀ» °íÁýÇϽʽÿÀ
¸ñ·Ï À­±Û ¾Æ·§±Û
³»¾Ë FREECOUNT.NET ÇÁÄ«³Ý »ý±ä³¯ 2003.12.20 Ȩ | Ä«¿îÅÍ | Ç÷¡½ÃºÏ | ÇÁ¸®º¸µå | Àü±¤ÆÇ | À¥°øºÎ¹æ | Ä¿¹Â´ÏƼ | ÂÊÁöÇÔ