ȸ¿ø°¡ÀԡžÆÀ̵ð/ºñ¹øã±â
ȨÀ¸·Î


PHP ÆÄÀÏ ½Ã½ºÅÛ(File System) ´Ù·ç±â #1
12³â Àü
[PHP]  ÆÄÀÏ ½Ã½ºÅÛ(File System) ´Ù·ç±â #1

PHP ÆÄÀÏ¿­±â¿Í ´Ý±â

¹«½¼ÀÏÀ» ÇÏ´øÁö ÀýÂ÷°¡ Àֱ⠸¶·ÃÀÔ´Ï´Ù. php¿¡¼­ ÆÄÀÏÀ» »ç¿ëÇÏ´Â ÀϹÝÀûÀÎ ÀýÂ÷´Â ¿©Å¸ ¾ð¾î¿Í ´Ù¸£Áö ¾Ê½À´Ï´Ù. ÆÄÀÏÀ» ¿­°í, ¿ëµµ¿¡ ¸Â°Ô »ç¿ëÇÏ°í, ´Ý¾ÆÁÖ¸é µË´Ï´Ù.


1. ÆÄÀÏ¿­±â

php¿¡¼­ ÆÄÀÏÀ» »ç¿ëÇϱâ À§Çؼ­ °¡Àå ¸ÕÀú ÇØ¾ß ÇÒ ÀýÂ÷¶ó¸é ÆÄÀÏÀ» ¿©´Â °ÍÀÔ´Ï´Ù. php¿¡¼­´Â ÆÄÀÏÀ» ¿­±â À§Çؼ­ fopen ÇÔ¼ö¸¦ Á¦°øÇÕ´Ï´Ù.

¡Øphp¿¡¼­ »ç¿ëµÇ´Â ÇÔ¼öµéÀº C¾ð¾îÀÇ ÇÔ¼öµé°ú »ó´çÈ÷ À¯»çÇÑ °ÍÀÌ ¸¹½À´Ï´Ù. ÆÄÀÏ°ü·Ã ÇÔ¼öµé ¿ª½Ã ¿¹¿Ü´Â ¾Æ´Õ´Ï´Ù.

int fopen (string filename, string mode [, int use_include_path])

À§´Â fopen ÇÔ¼öÀÇ ¿øÇüÀÔ´Ï´Ù. fopen ÇÔ¼ö´Â ÆÄÀÏ¿­±â¿¡ ¼º°øÇÏ¸é ´Ù¸¥ ÆÄÀÏÀÔÃâ·Â ÇÔ¼öµéÀÌ ÂüÁ¶ÇÒ Á¤¼ö ÇüÀÇ ÆÄÀÏÇÚµé(Æ÷ÀÎÅÍ)À» ¸®ÅÏÇØ ÁÝ´Ï´Ù. ÀÌ ¸®ÅÏ °ªÀ» º¯¼ö¿¡ ÀúÀåÇß´Ù°¡ ´ë´Ù¼öÀÇ ÆÄÀÏ°ü·Ã ÇÔ¼öµéÀ» »ç¿ëÇÒ ¶§ ¸Å°³º¯¼ö·Î ³Ñ°ÜÁÖ°Ô µÇ¸é ÆÄÀÏ°ü·Ã ÇÔ¼öµéÀº ³Ñ°Ü¹ÞÀº º¯¼öÀÇ °ªÀ» ÂüÁ¶Çؼ­ »ç¿ëÇÏ°Ô µÉ ÆÄÀÏÀ» ¾Ë¼ö ÀÖ°Ô µË´Ï´Ù. ÆÄÀÏ¿­±â¿¡ ½ÇÆнÿ¡´Â false¸¦ ¶æÇÏ´Â 0À» ¸®ÅÏÇÏ°Ô µË´Ï´Ù. ¾Æ·¡´Â fopen ÇÔ¼öÀÇ »ç¿ë ¿¹ÀÔ´Ï´Ù.

//·ÎÄÿ¡ ÀÖ´Â test.php ÆÄÀÏÀ» ÀбâÀü¿ëÀ¸·Î ¿±´Ï´Ù.
$fp=fopen("./test.php","r");


//httpÇÁ·ÎÅäÄÝÀ» »ç¿ëÇؼ­ À¥»ó¿¡ÀÖ´Â test.php ÆÄÀÏÀ» ÀбâÀü¿ëÀ¸·Î ¿±´Ï´Ù.
$fp=fopen("http://www.musictrot.com/test.php/","r");


//ftpÇÁ·ÎÅäÄÝÀ» »ç¿ëÇؼ­ ftp¼­¹ö»ó¿¡ ÀÖ´Â test.php ÆÄÀÏÀ» Àбâ Àü¿ëÀ¸·Î ¿±´Ï´Ù. ftp·Î Á¢¼ÓÀ» ¸Î±â À§Çؼ­´Â °æ·Î»ó¿¡ È£½ºÆ®¸í »Ó¸¸ ¾Æ´Ï¶ó, »ç¿ëÀÚ¸í°ú ºñ¹Ð¹øÈ£¸¦ °°ÀÌ ÀÔ·ÂÇØ ³õ¾Æ¾ß ÇÕ´Ï´Ù. ¾Æ·¡ÀÇ ftp ¿¹¿¡¼­´Â myuser°¡ »ç¿ëÀÚ¸í password°¡ ºñ¹Ð¹øÈ£ÀÔ´Ï´Ù.
$fp=fopen("ftp:myuser:password@musictrot.com/test.php","r");




fopenÇÔ¼ö´Â ·ÎÄÿ¡ ÀúÀåµÇ¾î ÀÖ´Â ÆÄÀÏ »Ó¸¸ ¾Æ´Ï¶ó, http¿Í ftp ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇؼ­ ¿ø°Ý¿¡ ÀÖ´Â ÆÄÀÏÀ» ¿­¼öµµ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ ÀÌ ºÎºÐÀº º¸¾È¿¡ ¹Î°¨ÇÑ »çÇ×ÀÌ¶ó¼­ ¸î°¡Áö Á¦¾à»çÇ×ÀÌ ÀÖ½À´Ï´Ù.

¡Ø Á¦¾à»çÇ×

http¿Í ftpÀ» ÀÌ¿ëÇؼ­ ÆÄÀÏÀ» ¿­±â À§Çؼ­´Â php.ini ÆÄÀÏÀÇ allow_url_fopen ¿É¼ÇÀÌ OnÀ¸·Î ¼³Á¤µÇ¾îÁ® ÀÖ¾î¾ß ÇÕ´Ï´Ù.
¾Æ¸¶µµ À¥È£½ºÆà ¼­ºñ½º¸¦ ¹Þ°í ÀÖ´Ù¸é ´ëºÎºÐÀÇ ¼­¹ö°ü¸®ÀÚ´Â allow_url_fopen ¿É¼ÇÀ» Off·Î ¼³Á¤ÇØ ³õ¾ÒÀ» °ÍÀÔ´Ï´Ù.
ftp´Â ÇÑ°¡Áö ´õ Á¦¾à»çÇ×ÀÌ Àִµ¥ ftp ¼­¹ö°¡ passive¸ðµå¸¦ Áö¿øÇØ¾ß ¸¸ ÇÕ´Ï´Ù.

¾Æ·¡´Â allow_url_fopen ¿É¼ÇÀÌ Off·Î ¼³Á¤µÇ¾úÀ»¶§ http ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇؼ­ fopenÇÔ¼ö¸¦ »ç¿ëÇÒ ¶§ Ãâ·ÂµÇ´Â ¿¡·¯¸Þ½ÃÁöÀÔ´Ï´Ù.

Warning: fopen() [function.fopen]: URL file-access is disabled in the server configuration




À§ÀÇ ÇÔ¼öÀÇ ¿øÇü¿¡¼­ ¾Ë¼ö ÀÖµíÀÌ fopen ÇÔ¼ö´Â 3°³ÀÇ ÆĶó¹ÌÅ͸¦ ÀÎÀÚ·Î ¹Þ½À´Ï´Ù.

1) ù¹ø° ÆĶó¹ÌÅÍ
String filename ¿­°íÀÚ ÇÏ´Â ÆÄÀϸíÀÔ´Ï´Ù.
2) µÎ¹ø° ÆĶó¹ÌÅÍ
String mode ÆÄÀÏÀ» ¿©´Â ¹æ¹ýÀ» ÁöÁ¤ÇÏ´Â ÆĶó¹ÌÅÍ·Î Àбâ - "r", ¾²±â- "w", Ãß°¡ - "a" ¿É¼ÇÀÌ ÀÖ½À´Ï´Ù.

Á¤¸®ÇØ º¸¸é ¾Æ·¡¿Í °°½À´Ï´Ù.

r Àбâ Àü¿ëÀ¸·Î ¿±´Ï´Ù. ÆÄÀÏ Æ÷ÀÎÅÍ´Â ÆÄÀÏÀÇ Ã³À½¿¡ À§Ä¡ÇÕ´Ï´Ù.
r+ Á¸ÀçÇÏ´Â ÆÄÀÏÀ» °»½Å(Àаí,¾²±â)¿ëÀ¸·Î ¿±´Ï´Ù. ÆÄÀÏ Æ÷ÀÎÅÍ´Â ÆÄÀÏÀÇ Ã³À½¿¡ À§Ä¡ÇÕ´Ï´Ù.

w ¾²±â Àü¿ëÀ¸·Î ÆÄÀÏÀ» ¿±´Ï´Ù. µ¿ÀÏÇÑ ÆÄÀϸíÀÇ ÆÄÀÏÀÌ Á¸ÀçÇÏ´Â °æ¿ì ¸ðµç ³»¿ëÀ» »èÁ¦ÇÕ´Ï´Ù, ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ÆÄÀÏÀ» »õ·Î »ý¼ºÇÕ´Ï´Ù. µÎ°æ¿ì ¸ðµÎ ÆÄÀÏ Æ÷ÀÎÅÍ´Â ÆÄÀÏÀÇ Ã³À½¿¡ À§Ä¡ÇÕ´Ï´Ù.
w+ °»½Å(Àаí,¾²±â)¿ëÀ¸·Î ÆÄÀÏÀ» ¿±´Ï´Ù. µ¿ÀÏÇÑ ÆÄÀϸíÀÇ ÆÄÀÏÀÌ Á¸ÀçÇÏ´Â °æ¿ì ¸ðµç ³»¿ëÀ» »èÁ¦Çϸç, ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ÆÄÀÏÀ» »õ·Î »ý¼ºÇÕ´Ï´Ù. µÎ°æ¿ì ¸ðµÎ ÆÄÀÏ Æ÷ÀÎÅÍ´Â ÆÄÀÏÀÇ Ã³À½¿¡ À§Ä¡ÇÕ´Ï´Ù.

a Ãß°¡¿ëÀ¸·Î ÆÄÀÏÀ» ¿±´Ï´Ù. ÆÄÀÏÀÌ ¾øÀ¸¸é ÆÄÀÏÀ» »ý¼ºÇÏ°í, ÆÄÀÏÀÌ Á¸ÀçÇϸé ÆÄÀÏÆ÷ÀÎÅÍ´Â ÆÄÀÏÀÇ ³¡¿¡ À§Ä¡ÇÕ´Ï´Ù.
a+ Ãß°¡¿ë, °»½Å¿ëÀ¸·Î ÆÄÀÏÀ» ¿±´Ï´Ù. ÆÄÀÏÀÌ ¾øÀ¸¸é ÆÄÀÏÀ» »ý¼ºÇÏ°í, ÆÄÀÏÀÌ Á¸ÀçÇϸé ÆÄÀÏ Æ÷ÀÎÅÍ´Â ÆÄÀÏÀÇ ³¡¿¡ À§Ä¡ÇÕ´Ï´Ù.

3) ¼¼¹ø° ÆĶó¹ÌÅÍ
use_include_path´Â ¼±ÅÃÀû ÆĶó¹ÌÅÍÀÔ´Ï´Ù.

Á¤¼ö"1"¶Ç´Â true¸¦ ÁöÁ¤ÇßÀ» °æ¿ì ÁöÁ¤µÈ µð·ºÅ丮¿¡ ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é include path¿¡¼­ ÆÄÀÏÀ» ã½À´Ï´Ù.

2. ÆÄÀϴݱâ

ÆÄÀÏ¿¡ ´ëÇÑ ÀÛ¾÷ÀÌ ³¡³µÀ» °æ¿ì fclose ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­ ÆÄÀÏÀ» ´Ý¾Æ ÁÝ´Ï´Ù. ÆÄÀÏÀ» ´ÝÁö ¾Ê°í php ½ºÅ©¸³Æ®°¡ Á¾·áµÇ´õ¶óµµ ÆÄÀÏÀº ¾Ë¾Æ¼­ ´ÝÈ÷°Ô µÇÁö¸¸, Àü¿¡ »ç¿ëÇß´ø ÆÄÀÏ Æ÷ÀÎÅ͸¦ Àç »ç¿ëÇØ¾ß ÇØ¾ß ÇÒ °æ¿ì, ¶Ç´Â °ú´ÙÇÑ ÆÄÀÏ ÇÔ¼ö È£Ãâ½Ã ÆÄÀÏÀ» ¿­Áö ¸øÇÑ´Â °æ¿ì°¡ »ý±æ ¼öµµ ÀÖÀ¸¹Ç·Î ÆÄÀÏÀ» ´Ý¾ÆÁÖ´Â ½À°üÀ» µéÀÌ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

php¿¡¼­ ÆÄÀϴݱ⸦ À§Çؼ­´Â fclose ÇÔ¼ö¸¦ »ç¿ëÇÕ´Ï´Ù.

int fclose(int fp);

ÆĶó¹ÌÅÍÀÎ fp´Â fopenÇÔ¼öÀÇ ¸®ÅÏ°ªÀÎ Á¤¼öÇü ÆÄÀÏ Æ÷ÀÎÅÍÀ̸ç ÆÄÀϴݱ⿡ ¼º°øÇϸé true ¸¦ ¶æÇÏ´Â Á¤¼ö1À» ½ÇÆÐÇϸé false¸¦ ¶æÇÏ´Â 0 À» ¹ÝȯÇÕ´Ï´Ù.

¾Æ·¡´Â test.php ÆÄÀÏÀ» Àбâ Àü¿ëÀ¸·Î ¿­¾î¼­ ±× ³»¿ëÀ» È­¸é¿¡ Ãâ·ÂÇÏ´Â °£´ÜÇÑ ¿¹ÀÔ´Ï´Ù. fgetc ÇÔ¼ö´Â ÆÄÀÏÀÇ ³»¿ëÀ»
ÇÑ ±ÛÀÚ¾¿ ÀоîµéÀÌ´Â ÇÔ¼öÀÔ´Ï´Ù.

<?php
   $filename = "test.php";
   $fp = fopen($filename, "r") or die("ÆÄÀÏ¿­±â¿¡ ½ÇÆÐÇÏ¿´½À´Ï´Ù");

   $buffer = "";
   while(!feof($fp)){
      $buffer .= fgetc($fp);
   }

   echo "<pre>".htmlspecialchars($buffer)."</pre>";
   fclose($fp);
?>


ÃßõÃßõ : 452 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
73
PHP ¸ÞÀÏ(mail) ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ Ã·ºÎÈ­ÀÏ Àü¼ÛÇϱâ
72
PHP ÇÔ¼ö °£´Ü Á¤¸®
71
PHP¿¡¼­ ¼¼¼Ç(session) »ç¿ëÇϱâ
70
PHP explode ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ ¹®ÀÚ¿­ ºÐ¸®
69
PHP split ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ ¹®ÀÚ¿­ ºÐ¸®
68
PHP À̸§ÀÌ °°Àº Æûű×(Form Tag)ÀÇ °ª(value) ó¸®Çϱâ
67
PHP ¿À´Ã³¯Â¥¸¦ ±âÁØÀ¸·Î ÀÌÀü,ÀÌÈÄ ³¯Â¥±¸Çϱâ
66
PHP ÇÑ±Û ¹®ÀÚ¿­ ÀÚ¸£±â
65
PHP ¹öÀü È®ÀÎÇϱâ
64
PHP - SELECT·Î ¹ÝȯµÈ ·¹ÄÚµå °¹¼ö¿Í Ä÷³ÀÇ °¹¼ö¸¦ ¾Ë·ÁÁÖ´Â ÇÔ¼ö
63
PHP Æû(form)°ªÀÇ À¯È¿¼º üũ
62
PHP no-cache ¼³Á¤(µÚ·Î°¡±â ¸·±â)
61
PHP ¿¡·¯ ó¸® ÇÔ¼ö die
60
PHP MySQL ¸í·É¾î ½ÇÇà ÇÔ¼ö mysql_query
59
PHP·Î MySQL µ¥ÀÌÅͺ£À̽º ¸¸µé±â(»ý¼ºÇϱâ)
58
PHP¿Í ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÑ µå·Ó´Ù¿î ¸Þ´º
57
PHP - xml ÀоîµéÀ̱â(read) Ŭ·¡½º
PHP ÆÄÀÏ ½Ã½ºÅÛ(File System) ´Ù·ç±â #1
55
PHP ÆÄÀÏ ³»¿ë Àбâ(freadÇÔ¼ö)
54
PHP ÆÄÀÏ ÇÑÁÙ Àбâ(fgetsÇÔ¼ö)
53
PHP ÇöÀç ÆäÀÌÁöÀÇ µµ¸ÞÀθíÀ̳ª urlµîÀÇ Á¤º¸ ¾Ë¾Æ¿À±â
52
PHP - À¥»çÀÌÆ®ÀÇ À¯È¿¼º üũ
51
fsockopen ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­ À¥»çÀÌÆ®¿¡ µ¥ÀÌÅÍ Àü¼ÛÇϱâ
50
PHP - ÆÄÀÏ´Ù¿î·Îµå ÇÔ¼ö
49
PHP ÆÄÀÏ 1¹ÙÀÌÆ®¾¿ Àбâ(fgetcÇÔ¼ö)
48
PHP °£´ÜÇÑ ÆÄÀÏ ¾÷·Îµå(upload) ¿¹Á¦
47
PHP ¹®ÀÚ¿­ÀÇ ±æÀ̸¦ °°°Ô ¸¸µé±â
46
PHP $HTTP_COOKIE_VARS·Î °ªÀÌ ¾È ³Ñ¾î¿Ã¶§
45
PHP ³­¼ö¸¦ ÀÌ¿ëÇÑ ÄíÆù¹øÈ£ »ý¼ºÇϱâ
44
PHP - POST ¹æ½ÄÀÇ ÆÄÀÏ ¾÷·Îµå ´Ù·ç±â
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.