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


popen
8³â Àü
(PHP 4, PHP 5, PHP 7)

popen — ÇÁ·Î¼¼½º¿¡ ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¿­

¼³¸í
resource popen ( string $command , string $mode )
command ·Î ÁöÁ¤ÇÑ ¸í·É¾îÀÇ Æ÷Å©¿¡ ÀÌ·ç¾îÁø ÇÁ·Î¼¼½º¿¡ ÆÄÀÌÇÁ¸¦ ¿ÀÇÂÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ
command
¸í·É.

mode
¸ðµå.

¹Ýȯ °ª
fopen() ·Î ¹ÝȯµÈ ÆÄÀÏ Æ÷ÀÎÅÍ¿Í °°Àº °ÍÀ» °±´Âµ¥ ±×°ÍÀº( ÀÐ°í ¾²±âÀÇ ¾î´À ÇÑÂÊ¿¡¼­¸¸ »ç¿ëµÇ´Â)´Ü ¹æÇâ ½ºÆ®¸²ÀÌ´Ù, pclose() À¸·Î ¹ÐÁ¢µÇÁö ¾ÊÀ¸¸é ¾È µÈ °÷ÀÌ ´Ù¸¨´Ï´Ù. ÀÌ Æ÷ÀÎÅÍ´Âfgets() ¹×fgetss() fwrite() ÀÇ ¾î´ÀÂÊÀ̵çÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ðµå°¡'r'¶§´Â µ¹·ÁÁÖ´Â ÆÄÀÏ Æ÷ÀÎÅÍ´Â ±× ¸í·ÉÀÇ STDOUT¿Í °°¾ÆÁý´Ï´Ù. ¶Ç ¸ðµå°¡ 'w'¶§´Â µ¹·ÁÁÖ´Â ÆÄÀÏ Æ÷ÀÎÅÍ´Â ±× ¸í·ÉÀÇ STDIN¿Í °°¾ÆÁý´Ï´Ù.

¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ìFALSE ¸¦ °±°Ú½À´Ï´Ù.

¿¹
»ç·Ê 1popen() ÀÇ ¿¹

<?php
$handle = popen("/bin/ls", "r");
?>
½ÇÇàÇØ¾ß ÇÒ ¸í·ÉÀÌ ¾ø´Â °æ¿ì¿£ Á¤»óÀûÀÎ ¸®¼Ò½º°¡ ¹ÝȯµË´Ï´Ù. ÀÌ»óÇÏ´Ù°í »ý°¢µÉÁöµµ ¸ð¸£Áö¸¸ ¿©±â¿¡´Â Àǹ̰¡ ÀÖ½À´Ï´Ù. ÀÌ¿¡ ÀÇÇؼ­ ²®Áú¿¡¼­ ¹ÝȯµÈ ¿¡·¯ ¸Þ½ÃÁö¿¡ Á¢¼ÓÇÒ ¼ö ÀÖ½À´Ï´Ù.

»ç·Ê 2popen() ÀÇ ¿¹

<?php
error_reporting(E_ALL);

/* ¸®´ÙÀÌ·ºÆ®¿¡ ÀÇÇÑ Ç¥ÁØ ¿À·ù Ãâ·ÂÀ» ÃëµæÇÕ´Ï´Ù */
$handle = popen('/path/to/executable 2>&1', 'r');
echo "'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo $read;
pclose($handle);
?>

ÁÖÀÇ:

½Ö¹æÇâ(two-way)ÀÇ ¼­Æ÷Æ®¸¦ ¿ä±¸ÇÏ°í ÀÖ´Ù¸é proc_open() ¸¦ »ç¿ëÇϼ¼¿ä.
ÁÖÀÇ: ¼¼ÀÌÇÁ ¸ðµå°¡ À¯È¿ÇÑ °æ¿ì safe_mode_exec_dir ¾È¿¡ ÀÖ´Â ½ÇÇà ÇÁ·Î±×·¥¸¸À» ½ÇÇà °¡´ÉÇÕ´Ï´Ù. ½ÇÁ¦ÀûÀÎ ÀÌÀ¯·Î ÇöÀç ½ÇÇà ÇÁ·Î±×·¥¿¡ ´ëÇÑ Æнº¸¦.. Æ÷ÇÔÇÒ ¼ö ¾ø½À´Ï´Ù.
°æ°í
¼¼ÀÌÇÁ ¸ðµå°¡ À¯È¿ÇÑ °æ¿ì ¸í·É ¹®ÀÚ¿­Àº escapeshellcmd() ±×·¡¼­ È®ÀåµË´Ï´Ù. Áï,´Âecho y | echo x ,echo y \| echo x ÀÔ´Ï´Ù.
ÃßõÃßõ : 277 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
2,735
[jQuery]toggleClass() ¸Þ¼­µå·Î CSS Ŭ·¡½º¿¡ ´ëÇÑ Åä±×¸µ
2,734
JQuery ¸Þ¼­µå Çѹø¸¸ ½ÇÇà ( One() )
2,733
jQuery Event(À̺¥Æ®¿¡ »ý¸íÀ»)
2,732
jQuery Event - bind() ¸Þ¼­µå¸¦ ÅëÇÑ À̺¥Æ® ¿¬°á
2,731
escapeshellcmd
2,730
passthru
2,729
system
2,728
exec
2,727
proc_open
popen
2,725
fgetc
2,724
fgets
2,723
fclose
2,722
fopen
2,721
fsockopen
2,720
stream_set_timeout
2,719
JQUERY Ŭ¸¯ À̺¥Æ® °­Á¦ ¹ß»ý
2,718
ajaxComplete() Ajax°¡ ¿Ï·áµÇ¸é È£Ãâ
2,717
ajaxError() Ajax ¿¡·¯°¡ ¹ß»ýµÇ¸é È£Ãâ
2,716
jQuery.ajaxPrefilter() $.ajax() ÇÔ¼ö È£Ãâ Àü Ajax ¿É¼Ç ¼öÁ¤
2,715
ajaxSend() Ajax ¿äûÀ» º¸³»±â Àü¿¡ È£ÃâµÇ´Â À̺¥Æ®
2,714
jQuery.ajaxSetup() Ajax ¿É¼Ç °ªÀ» ¼³Á¤ÇÏ´Â ÇÔ¼ö
2,713
ajaxStart() Ajax ¿äûÀÌ ½ÃÀÛµÉ ¶§ È£ÃâµÇ´Â ÇÔ¼ö
2,712
ajaxStop() Ajax ¿äûÀÌ ¿Ï·áµÇ¸é È£Ãâ
2,711
ajaxSuccess() Ajax ¿äûÀÌ ¼º°øÀûÀ¸·Î ¿Ï·á ¶§¸¶´Ù È£Ãâ
2,710
jQuery.getScript, JavaScript ÆÄÀÏÀ» ·ÎµåÇÏ°í ½ÇÇà
2,709
load(), Ajax·Î ¹ÞÀº HTMLÀ» ÀÏÄ¡ÇÏ´Â ¿ä¼Ò ¾È¿¡ Ãß°¡
2,708
jQuery.param(), Ajax µ¥ÀÌÅÍ¿ë ¹è¿­À̳ª °´Ã¼¸¦ Á÷·ÄÈ­
2,707
jQuery.get() HTTP GET ¹æ½Ä Ajax ¿äû
2,706
jQuery.post(), Ajax HTTP POST ¹æ½Ä ¿äû
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.