기술강의 (PHP) 생초보 php 길들이기. -2-
2005.05.24 11:59
분류 | 기타툴 |
---|---|
출처 | 1 |
<생초보 php 길들이기 -2->
이번시간에는 php에 p자도 모르는 분들을 위해 php를 이용하는 기본개념 정도를 알아보도록 하겠습니다. 초급 강의이므로 php를 조금이라도 다룰줄 아시는 분들에게는 적합하지 않음을 알려드립니다.
1. 변수와 함수의 이해.
변수는 우리가 흔히 다루는 게임제작툴인 RPG만들기2000 에도 사용되어서 참 익숙한 놈입니다.
그만큼 프로그래밍이라는 곳에서 아주 중요하게 여겨지는 것이기도 합니다. 변수없는 프로그래밍은 상상하기 힘들지요.
변수의 개념은 매우 간단합니다.
우리 인생에도 변수가 있듯이 언제 어떻게든지 변할 수 있는 개념이 바로 변수!
자 그럼 한번 더 쉽게 살펴 볼까요? 아래 언어를 문장으로 설명한 것을 잘 보세요.
PHP언어로 | 문장으로 설명 |
$변수1 = 100; |
$변수1은 이제부터 정수 100이다. |
자자 이제 슬슬 이해가 들어가기 시작하지 않습니까?
변수라는 것은 무엇이든지 = 를 통해서 변신할 수 있는 개념입니다. 위에서는 숫자만 가지고 설명을 하였지만 아래와 같이 문자형으로도 가능하죠.
PHP언어로 | 문장으로 설명 |
$변수1 = '안녕하세요'; |
$변수1은 이제부터 '안녕하세요' 이다. |
위와같이 변수에는 문자, 숫자, 연산된 결과값, 함수값 등을 대입시킬 수 있습니다.
간단하죠?
함수는 언어를 언어일 수 있게 만들어 주는 핵심이라고 볼 수 있습니다.
우리가 흔히 C 언어이다 PHP 언어이다 JAVA 언어이다 등등 언어를 구분짓는 것은 바로 이 함수 때문이라고 해도 과언이 아닙니다.
함수는 쉽게 말하자면 언어의 기능옵션 이라고 보면 됩니다.
즉 PHP 에서는 이러이러이러한 기능을 할 수 있는 함수가 있다. 라고 하면 그러그러한 기능을 낼 수 있는 옵션이 있는 거라고 생각하시면 됩니다.
함수는 많은 언어들이 유사한 점이 많지만 각 언어마다 약간씩 차이가 있고, 그 차이가 각 언어를 그 언어만의 개성을 가지게 만들어 준다고 할 수 있습니다.
간단히 함수 하나를 예로 들자면.
$지금시각 = time();
이것입니다. PHP에서 이 명령어를 사용해 주면 $지금시각 이라는 변수에 현재의 리눅스 시각(1970년 1월 1일부터 시작되어 초로 계속가는 시간)이 대입되게 됩니다.
여기서 시간을 만들어 주는 함수.
time 이 바로 함수랍니다.
시간과 관련된 함수를 좀더 자세히 들여다 보면.
$지금리눅스시간 = time(); $지금시간 = date("Y/m/d H:i:s",$지금리눅스시간); $지금시간 == 2005/5/24 18:35:24 |
위에서 두가지 함수가 들어갔습니다. 좀전에 설명한 time 함수와 date 함수입니다.
date 함수는 리눅스시간을 특정 포맷에 맞게 날짜로 바꿔주는 함수입니다.
date("변환할포멧",$리눅스시간이저장된변수);
이런식으로 변수에 대입해서 사용할 수 있지요.
함수 역시도 변수처럼 그냥 '함수'다 라고만 알면 이해하기 힘들고 그 동작에 관해서 이해를 해보면 쉽게 알 수 있습니다.
그리고 변수는 우리가 프로그래밍을 하면서 $ 이게 포함된 문자는 변수라 인식하므로 아무거나 사용해도 되서 외울 필요가 없지만.
함수의 경우 함수마다 특징이 있기 때문에 함수를 알 필요가 있습니다.
다만 모든 함수를 다 외우는건 너무 힘든 일이기 때문에 함수를 알기쉽게 모아둔 '창조도시 언어 프로그래밍 사전' 같은 함수를 제공해 주는 사전을 적극 활용하는게 좋습니다.ㅡㅡ;(홍보)
변수와 함수의 개념이 이해가 됐다면 일단 초보 PHP 프로그래머로서의 기본기를 가지게 된 것입니다.
자 그러면 간단한 변수와 함수를 가지고 재미있는 소스를 하나 짜보겠습니다.
PHP가 지원되는 서버에 계정이 있으시거나 하신분은 한번 작동을 시험해 보시는 것도 공부에 도움이 될겁니다.
|
신개념 랜덤으로 사람 만들기 프로그램 완성! ㅡㅡ;
여기에 들어간 함수는
rand - 조건값의 값중 랜덤값 결정 (1,5) 가 조건값이 되면 1~5사이의 정수가 조건값이 됨.
time - 현재 리눅스 시간값을 구함
date - 조건에 정해진 리눅스 시간을 특정 포맷으로 날짜로 변환함.
echo - 내용을 텍스트 상태로 화면에 출력해줌.
그리하여 위 함수를 페이지에 만들고 돌려보면.
이름과 혈액형과 생일이 랜덤으로 정해져서 출력되게 됩니다.
유심히 살펴보시면 함수를 이해하기 쉬울겁니다.
자 변수와 함수의 이해는 여기까지입니다.
다음시간에는 함수와 연산에 대해 배워보도록 하겠습니다. 연산도 굉장히 중요함...
댓글 18
-
『邪神』
2005.05.28 10:29
잘 봤어요^^|+rp2+|58|+rp3+|lesson -
아렉스
2005.05.30 09:01
역시 어려워...|+rp2+|67|+rp3+|lesson -
티다
2005.07.17 03:15
기본적으로 if문은
if(조건)
실행;
}
형식이구요
elseif문이란것도 있는데 이것은 if문의 값이 참일때, 거짓일때 둘다 사용할수 있습니다.
elseif문은
elseif(조건) {
실행;
} else {
실행;
}
형식이구요...
또 함수에는 time, array, mktime, file, addslashes등이 있고
사용자 정의 함수를 만드려면
function 함수명() {
함수내용
}
형식입니다.|+rp2+|213|+rp3+|lesson -
티다
2005.07.17 03:19
또한 echo문을 사용하실때 주의해야하실점이 하나있는데요
<?
$aa = aa
?>
상태에서 "참, aa는 뭘까?"라는 걸 출력하려고 할때
그냥
echo"참, $aa는 뭘까?"; 라고 써도 작동되는 경우가 있긴 하지만
가끔 오작동되는 경우가 있습니다.
이럴 경우
.을 이용하여
echo"참, ".$aa."는 뭘까?"; 라고 쓰는게 정석입니다.|+rp2+|214|+rp3+|lesson -
학생회장
2005.08.03 08:06
그럼 언어만 배울 것이 아니라 수학적 창조력도 있어야겠군요.|+rp2+|262|+rp3+|lesson -
지나가던H군
2005.08.25 17:20
echo 로 출력시 화면에 "가 출력되도록 하고싶으면 \" ~|+rp2+|310|+rp3+|lesson -
발칸300
2006.02.27 05:32
이 글에 나온 언어들 또는 기타 외 등등을 다 알아야지만 무엇인가 만들거나 작동시킬수 있단 말이죠 ??|+rp2+|618|+rp3+|lesson -
히로유키
2006.06.10 11:33
어렵도다--
-;|+rp2+|742|+rp3+|lesson -
한국의두라드
2006.07.03 01:26
아 이해감 천무님의 글은 정말 이해가 잘된다는... 매번 좋은 강의 감사드려요!|+rp2+|771|+rp3+|lesson -
phoenix
2006.07.22 07:06
이게 php 인가요 ?? IRC 스크립트에서 쓰는 문법이군요,. 그쪽에는 텍스트창의 출력할떄
msg $chan 을 쓰는데,. 조금 다르네요 rand 같은건,.
$rand(1,3) 이렇게,. 이게 무슨 언어인지 몰랐는데 php 였군요,. |+rp2+|798|+rp3+|lesson -
아란
2006.08.14 01:12
어려워라.|+rp2+|824|+rp3+|lesson -
Zeprod
2006.12.10 10:06
프로그래밍 언어는 어렵지 않습니다. 단지 문법만 찾아가면서 몇번 써보면 몸에 익게 되지요.|+rp2+|881|+rp3+|lesson -
Zeprod
2006.12.21 11:54
아무리 언어라지만, PHP 강의를...|+rp2+|885|+rp3+|lesson -
창조※도시$
2007.06.15 06:39
변수 잘 알았습니다.!|+rp2+|955|+rp3+|lesson -
즐겁게살다가
2007.07.06 05:34
모르겠어.. 모르겠어.. 어려워,, 어려워!!!|+rp2+|959|+rp3+|lesson -
힙합스타이너
2007.07.10 02:42
어셈블러 같은거 하는것보다는 진짜진짜진짜 1+1 만큼 쉬운것들인데.,.|+rp2+|966|+rp3+|lesson -
Alone
2008.03.24 03:18
뭐야 이거 뭔말이지 ㅡㅡ |+rp2+|1068|+rp3+|lesson -
KOOK
2010.01.12 05:05
잘배웠습니다 감사합니다~|+rp2+|1165|+rp3+|lesson
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
50 | 인사 올립니다. [1] | 아싸사랑 | 2010.08.02 | 217 |
49 | 플레이와 내러티브의 균형 조율 [1] | 아싸사랑 | 2010.10.05 | 238 |
48 |
효과적인 UI의 설계 - 배치
![]() | 아싸사랑 | 2010.11.10 | 261 |
47 | 게임은 쌍방향 엔터테인먼트이다. [4] | 아싸사랑 | 2010.08.02 | 273 |
46 | 효과적인 UI의 설계 - 개론 | 아싸사랑 | 2010.11.09 | 273 |
45 | 뭐 부터 시작해야 하나 [1] | 아싸사랑 | 2010.09.18 | 291 |
44 | 게임 기획 개요 2 [기획서와 시나리오의 차이점] | Vermond | 2008.08.23 | 1447 |
43 | 게임 시나리오 입문 [2] 개요 [1] | Vermond | 2007.10.18 | 1568 |
42 | 게임 기획 개요 3 [기획서 part 2 - 설정] [7] | Vermond | 2009.02.09 | 1573 |
41 | 게임 기획 개요 3 [기획서 part 3 - 시나리오(1)] [1] | Vermond | 2009.02.15 | 1573 |
40 | 보편적 상황에 따른 연출의 힘. [2] | 창조도시창조도시 | 2005.03.08 | 1584 |
39 | 게임 기획 개요 3 [기획서 part 1] [1] | Vermond | 2008.08.24 | 1689 |
38 | 보편적 상황에 따른 연출의 힘. [9] | 천무 | 2005.05.24 | 1780 |
37 | 게임 시나리오 입문 [4] 작성하기 - 후반부 [4] | Vermond | 2007.10.29 | 1858 |
36 | 덫붙임 연출 [10] | 천무 | 2005.05.24 | 1879 |
35 | 게임 시나리오 입문 [3] 작성하기 - 전반부 [4] | Vermond | 2007.10.23 | 2103 |
34 | 연출이란? [13] | 천무 | 2005.05.24 | 2131 |
» | (PHP) 생초보 php 길들이기. -2- [18] | 천무 | 2005.05.24 | 2291 |
32 | 바실리어트 4. 소스 준비 | Vermond | 2007.07.08 | 2368 |
31 | 찰드 도트강의 "1" -케릭터 레이더의 이해 (1/2)- [6] | ◈ÐÆЯΚ◈찰드 | 2009.08.14 | 2410 |