|
[ÇÔ¼ö] PHP¸¦ ½© ½ºÅ©¸³Æ® ¾ð¾î·Î »ç¿ëÇϱâ
|
|
±Û¾´ÀÌ |
Çã·ÃÈ£ |
³¯ Â¥ |
01-01-17 11:24 |
Á¶ ȸ |
5126 |
¿À´Ã³¯ µ¿Àû À¥ ÆäÀÌÁö¸¦ °³¹ßÇÏ´Â ÃÖ°íÀÇ ¾ð¾î°¡ PHP¶ó´Â °ÍÀº ´©±¸³ª ´Ù ¾Æ´Â »ç½ÇÀÔ´Ï´Ù. ÇÏÁö¸¸ PHP°¡ ½© ½ºÅ©¸³Æ® ¾ð¾î·Îµµ »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀº ¸ð¸£´Â »ç¶÷ÀÌ ¸¹Àº °Í °°½À´Ï´Ù. ½© ½ºÅ©¸³Æ® ¾ð¾î·Î½áÀÇ PHP´Â Bash³ª Perl¸¸Å ưưÇÏÁö´Â ¾ÊÁö¸¸ ¸¹Àº ÀÌÁ¢ÀÌ ÀÖ½À´Ï´Ù.
PHP¸¦ ½© ¾ð¾î·Î »ç¿ëÇϱâ À§ÇØ ¿ä±¸µÇ´Â °ÍÀº PHP¸¦ ¾ÆÆÄÄ¡ ¸ðµâ ´ë½Å CGI ¹ÙÀ̳ʸ®·Î ¼³Ä¡ÇØ¾ß ÇÕ´Ï´Ù. º¸¾È ¹®Á¦°¡ °É·Á Àֱ⠶§¹®¿¡ PHP¸Þ´º¾óÀÇ Âü°íÇϱ⠹ٶø´Ï´Ù.
ÀϹÝÀûÀÎ PHP À¥ ÆäÀÌÁö¿Í PHP ½© ½ºÅ©¸³Æ® »çÀÌÀÇ ´Ü ÇѰ¡Áö Â÷ÀÌÁ¡Àº PHP½ºÅ©¸³Æ®ÀÇ Á¦ÀÏ Ã¹ ¹øÂ° ÁÙ¿¡ ´ÙÀ½°ú °°ÀÌ ½© È£ÃâÀ» ÇØÁÖ¾î¾ß ÇÏ´Â Á¡ÀÔ´Ï´Ù.
#!/usr/local/bin/php -q
-q ¿É¼ÇÀº HTTPÇì´õ¸¦ »ç¿ëÇÏÁö ¾Ê°Ú´Ù´Â ¶æÀÔ´Ï´Ù. ¶ÇÇÑ PHPű׸¦ »ç¿ëÇØ¼ ½ºÅ©¸³Æ®ÀÇ ½ÃÀÛ°ú ³¡À» ÁöÁ¤ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.
<?php ?>
ÀÌÁ¦ ¸ðµçÀ̰¡ ¾Ë°í »ç¶ûÇϴ ǥÁØ ¿¹¸¦ µé¾îº¾½Ã´Ù.
#!/usr/local/bin/php -q
<?php
print("Hello, world!
");
?>
ÀÌ ÄÚµå´Â ¿¹»óÇÏ´Ù ½ÃÇÇ È¸é¿¡ "Hello, world!"¸¦ Ãâ·ÂÇÏ°Ô µË´Ï´Ù.
-½© ½ºÅ©¸³Æ®¿¡ ¸Å°³º¯¼ö Àü´ÞÇϱâ(Passing arguments to the shell script)
ÀϹÝÀûÀ¸·Î ½© ½ºÅ©¸³Æ®¿¡´Â ¸Å°³º¯¼ö¸¦ Àü´Þ ÇÒ ¼ö ÀÖ¾î¾ßÇÕ´Ï´Ù. ¸Å°³º¯¼ö¸¦ Àü´ÞÇÏ´Â °ÍÀº ´ÙÀ½°ú $argv ¹è¿À» ÅëÇØ¼ ÀÌ·ç¾î Áý´Ï´Ù.
#!/usr/local/bin/php -q
<?php
$first_name = $argv[1];
$last_name = $argv[2];
print("Hello, $first_name $last_name! How are you today?
");
?>
Áï ÀÌ ¿¹Á¦¿¡¼´Â ½ºÅ©¸³Æ®·Î Àü´ÞµÈ µÎ ¸Å°³º¯¼ö¸¦ Ãâ·ÂÇÕ´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ »ç¿ëµÉ ¼ö ÀÖ°í
[dbrogdon@artemis dbrogdon]$ scriptname.ph Darrell Brogdon
´ÙÀ½°ú °°À» Ãâ·ÂÀ» ³»°Ô µÉ °ÍÀÔ´Ï´Ù.
Hello, Darrell Brogdon! How are you today?
[dbrogdon@artemis dbrogdon]$
½© ½ºÅ©¸³Æ®¿Í À¥ ÆäÀÌÁö¿¡¼ $argv ¹è¿ÀÇ Â÷ÀÌÁ¡Àº ½© ½ºÅ©¸³Æ®ÀÇ $argv[0]Àº ½ÇÇàµÈ ½ºÅ©¸³Æ® ¸íÀÌ µé¾î °£´Ù´Â Á¡ÀÔ´Ï´Ù. À¥ ÆäÀÌÁö¿¡¼´Â ù ¹øÂ° °ª($argv[0])Àº query ¹®ÀÚ¿ÀÔ´Ï´Ù.
-½ºÅ©¸³Æ®¸¦ ÀÎÅÍ¾×Æ¼ºêÇÏ°Ô ¸¸µé±â(Making a script more interactive)
±×·¯µ¥ ¾î¶»°Ô ÇØ¾ß »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÏ ¼ö ÀÖÀ»±î¿ä? ¾î¶»°Ô ÀÎÅÍ¾×Æ¼ºêÇÑ ½ºÅ©¸³Æ®¸¦ »ý¼ºÇÒ ¼ö ÀÖÀ»±î¿ä? PHP´Â À¥»ó¿¡¼ ¸í·ÉÀ» Àоî¿À´Â ÇÔ¼ö´Â ±âº»ÀûÀ¸·Î Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ÇÏÁö¸¸ ´ÙÀ½°ú °°Àº PHP ÇÔ¼ö¸¦ »ç¿ëÇØ¼ ¿¡¹Ä·¹ÀÌÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÁÖ : ÀÌ ÇÔ¼ö´Â Unix»ó¿¡¼¸¸ µ¿ÀÛÇÕ´Ï´Ù.
<?php
function read() {
$fp=fopen("/dev/stdin", "r");
$input=fgets($fp, 255);
fclose($fp);
return $input;
}
?>
ÀÌ ÇÔ¼ö´Â Ç¥ÁØ ÀÔ·Â(Linux¿¡¼ /dev/stdin)À» ÀǹÌÇÏ´Â ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¿ÀÇÂÇϰí
À̳ª EOF¸¦ ¸¸³ª°Å³ª 255¹®ÀÚ±îÁö ÀÐ¾î ¿É´Ï´Ù. ÁÖ·Î
°¡Áö ÀϾî¿À°Ô µÉ °ÍÀÔ´Ï´Ù. ±×·± ´ÙÀ½ ÆÄÀÏ Æ÷ÀÎÅ͸¦ ´Ý°í µ¥ÀÌÅ͸¦ ¸®ÅÏÇÕ´Ï´Ù.
ÀÌÁ¦ ¾Õ¼µç ¿¹Á¦ ½ºÅ©¸³Æ®¸¦ ¼öÁ¤Çؼ read()ÇÔ¼ö¸¦ »ç¿ëÇØ¼ »ç¿ëÀÚ ÀÔ·ÂÀ» ±â´Ù¸®°Ô ÇØº¾½Ã´Ù
#!/usr/local/bin/php -q
<?php
function read() {
$fp=fopen("/dev/stdin", "r");
$input=fgets($fp, 255);
fclose($fp);
return $input;
}
print("What is your first name? ");
$first_name = read();
print("What is your last name? ");
$last_name = read();
print("
Hello, $first_name $last_name! Nice to meet you!
");
?>
±×·¯³ª ÀÌ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ°Ô µÇ¸é ¸¶Áö¸· ¶óÀο¡¼ ÇÑÁÙ·Î Ãâ·ÂµÇ´Â ´ë½Å¿¡ ¼¼ÁÙ·Î Ãâ·ÂµÇ°Ô µË´Ï´Ù. ÀÌ´Â read()ÇÔ¼ö°¡
¹®ÀÚ±îÁö ÃëÇ߱⠶§¹®ÀÔ´Ï´Ù. ÀÌ´Â read()ÇÔ¼ö°¡ µ¥ÀÌÅ͸¦ ¸®ÅÏÇÒ ¶§
À» Á¦°ÅÇØ¼ µ¥ÀÌÅ͸¦ ¸®ÅÏÇÏ°Ô Çϸé ÇØ°áµË´Ï´Ù.
<?php
function read() {
$fp=fopen("/dev/stdin", "r");
$input=fgets($fp, 255);
fclose($fp);
return str_replace("
", "", $input);
}
?>
- PHP ½© ½ºÅ©¸³Æ®¸¦ ÀÏ¹Ý ½© ½ºÅ©¸³Æ®¿¡ Æ÷ÇÔ½Ã۱â
¶§¶§·Î PHP½© ½ºÅ©¸³Æ®¸¦ Bash³ª ´Ù¸¥ ½© ½ºÅ©¸³Æ®¿¡ »ðÀÔÇÏ´Â °ÍÀÌ ÆíÇÒ ¶§µµ ÀÖ½À´Ï´Ù. ÀÌ´Â °£´ÜÇÑ Æ®¸¯À¸·Î °¡´ÉÇÕ´Ï´Ù.
PHPÄڵ带 Æ÷ÇÔ½ÃŰ´Â ¹æ¹ý :
#!/bin/bash
echo This is the Bash section of the code.
/usr/local/bin/php -q << EOF
<?php
print("This is the PHP section of the code
");
?>
EOF
°£´ÜÇÏÁö ¾Ê½À´Ï±î? º¯¼ö¸¦ Ãß°¡Çϱâ Àü±îÁö´Â °£´ÜÇÕ´Ï´Ù. ´ÙÀ½ÀÇ ÄÚµå ºÎºÐÀ» ½ÇÇàÇØ º¼±î¿ä?
#!/bin/bash
echo This is the Bash section of the code.
/usr/local/bin/php -q << EOF
<?php
$myVar = "PHP";
print("This is the $myVar section of the code.
");
?>
EOF
¾Æ¸¶ ´ÙÀ½°ú °°Àº ¿¡·¯¸¦ ¹ß»ýÇÏ°Ô µÉ °ÍÀÔ´Ï´Ù.
<b>Parse error</b>: parse error in <b>-</b> on line <b>2</b><br>
À̸¦ ÇØ°áÇϱâ À§Çؼ PHPÄÚµåÀÇ $¾Õ¿¡ ¸¦ ºÙ¿© ÁÝ´Ï´Ù.
#!/bin/bash
echo This is the Bash section of the code.
/usr/local/bin/php -q << EOF
<?php
$myVar = "PHP";
print("This is the $myVar section of the code.
");
?>
EOF
ÀÌÁ¦ PHP¸¦ »ç¿ëÇØ¼ ÀÚ½ÅÀÇ ½© ½ºÅ©¸³Æ®¸¦ ¸¸µé¾î º¸¼¼¿ä~
--Darrell
--¹ø¿ª : Çã·ÃÈ£
|
|
|
°Ô½Ã¹° 46°Ç
(ÁÖ)ÇÇ¿¡ÀÌÄ¡ÇǽºÄð´åÄÄ
»ç¾÷¹øÈ£ 119-86-25309
ÅëÆÇ 2010-¼¿ï±Ýõ-0082È£
Á÷¾÷Á¤º¸ ¼¿ï°ü¾Ç Á¦2010-03È£
¼¿ï½Ã ±Ýõ±¸ °¡»êµ¿ 371-50 ¿¡À̽ºÇÏÀ̾صå3Â÷ 9Ãþ
´ëÇ¥ ÀÓ¼ºÁø
°³ÀÎÁ¤º¸º¸È£Á¤Ã¥ ¹× ´ã´ç ÇϹÌÇâ
ÀüÈ 02-2627-6637
ÆÑ½º 02-2624-1371
E-mail member@phpschool.com
Copyright PHPSCHOOL.com All rights reserved.