웹마스터 팁

PHP 익히기 1

2003.06.09 06:25

구리구리

요번에 새롭게 강좌를 꾸미려 합니다.
제가 능력이 부족해서 세밀하게 못하는점 많은 양해 부탁드립니다.

PHP의 개념은 그냥 넘어가도록 하고 익히기로 바로 넘어 가려 합니다.


1. 최초의 PHP문서 만들기.

01. <html>
02. <head>
03. <title>PHP문서 최초 만들어보기</title>
04. </head>
05. <body>
06. <?
07. /* 여기부터는 PHP 스크립트입니다 */
08. echo ("안녕하세요? <font size=7><b>최초의 php문서</b></font>입니다.");
09. /* 07번 라인에 있는 주석처럼 주석은 실제 화면에 보여주지 않습니다. */
10. ?>
11. </body>
12. </html>

----end----

자 어떤 결과물이 나올까요.
직접 확인해 보세요.

자 결과물에서 소스 보기를 해봅시다.
아마도 이럴것입니다( -_ㅡ; 어디서 많이 들어 본 말인데..)
<html>
<head>
<title>PHP문서 최초 만들어보기</title>
<body>
안녕하세요? <font size=7><b>최초의 php문서</b></font>입니다.
</body>
</html>

이런 결과물을 보실수 있습니다.
무엇이 차이점이냐? 똑같은거 같은데라고 하시는 분들도 있으리나 생각합니다.
보시면 아시겠지만 <? ?>사이에 있는 내용이 일반 html로 바뀌어 출력되는거 보실수 있습니다.
8번행에서 사용된 echo()함수는 인자로 전달된 문자열을 그대로 출력하는 함수임을 기억합시다.

제가 알려드리려 하는것은 최초의 문서를 만들라는게 아니라 기초함수인 echo()의 기능을 알아야 한다는 것입니다.
echo()의 함수는 그대로 출력한다라고 알아두셔도 무난할것입니다. <--- 태클사양안해요^^;



2. PHP의 파서의 이해
대체 파서라는 놈이 뭐하는 놈이냐? 궁금하시죠 저도 궁금합니다.
자 한번 알아 볼까요?
PHP파서는 웹서버로부터 요청받은 문서내에서 PHP스크립트 부분을 구별할때 <? 태그와 ?> 태그를 찾아주는 아주
허접한 녀석입니다.
즉 요청받은 문서 내에서 <? 태그로 시작해서 ?> 태그로 끝나는 부분의 코드는 PHP코드로 인식하여 해석하는 것인데 이방법 외에도 많은 PHP스크립트 코트임을 나타내는 몇가지 방법들이 있죠.
<?PHP 뭐 이런것도 있고 ASP를 하셨던분들은<% 이러한 방법도 사용하시겠네요.

여기서 잠깐!  난 <? 요놈 대신 <%걸 사용했는데 PHP스크립트가 그대로 열리는데요? 라고
하는 분들 계실겁니다. 자 왜 그런거 알아 봅시다. 너무 깊게 들어가면 머리 아프니깐
살짝 기본만 잡아 봅시다 PHP를 설정하는 PHP.INI라는 파일이 있습니다 물론 서버쪽에 있는것이고
그곳에 asp_tags = On 으로 되어 있어야 <%함수가 먹힌다는군요. 결국 편리성을 주는 부분이라는것입니다.

별루 알아두실 필요는 없습니다.

여기서 문제 나갑니다
<?
echo ("안녕하세요? php스크립트 1번놈입니다.<br>");
echo ("안녕하세요? php스크립트 2번놈이지라요. <br>");
echo ("안녕하셔와요? 지는 php스크립트 3번놈입니다요.");
?>

이렇게 저장하고 웹브라우저에서 봤을때의 결과와 소스를 보세요.
정답은 익히기2부에 올려드릴테니 그때 확인해 보시면 될것 같습니다.


3.PHP의 변수형
자 이제부터 변수형에 대해 알아 보자구요 저도 무지 궁금하네요.
뭐 어렵게 설명할필요 뭐가 있습니까. 그냥 변수형이겠죠.

PHP에서 지원하는 주요변수형은 몇몇가지가 있습니다
integer(정수형) 1 이나 1325 이런 숫자가 정수형이죠. (제가 참고로 산수를 몰라서 정수형하면 몰라서.. ^^;)
double(실수형) 1.5 이나 1325.242 이런 소수점이 들어간 숫자를 실수형이죠
string(문자열) babo 이나 fool 이런 문자들을 문자열이라 합니다.
array(배열) 말그대로 배열을 하는것이죠
object(객체) 객체를 말하는거구요


자 우리는 이젠 PHP에서 핵심을 배웠습니다. 이거 중요한 부분이니 기억들 하세요. 머리 때려가면서라도 기억하세요
양이 좀 많긴 하지만 기억해 둡시다.
기억안해두면 익히기 나가기 힘드니 기억해 둡시다. 저도 머리 때려가면 지금 기억하고 있어요.

근데 참 궁금하더라구요 왜 PHP에서는 $를 그리 많이 쓰는지 돈을 좋아하는 놈인지 궁금하더군요.
PHP에서는 $name처럼 변수임을 나타내기 위해 변수명 앞에는 $표시하는 거랍니다.
$좋잖아요 자 기억해 둡시다 변수형 앞에는 $를 표시해 주는거.


자 한번 그럼 우리 변수형도 배웠으니 테스트 해볼까요.
$a = 250;
자 위에것만 봐도 답이 확 나오죠? $a  변수 앞에 $거 붙여 주는 겁니다. $a는 250이다 라는 말인데...
자 250은 어떤 변수형일까요? 네 맞습니다. 정수형 정수형이 뭐라구 했죠? 예? 우격다짐하는 형이라구요?
할말을 잃었습니다 정수형은 위에 참고 하시면 아시겠죠 integer라고 합니다.

자. 쉽죠?

한번더 두번째 PHP문서를 만들어 볼까요?

<html>
<head>
<title>2번째 문서라네</title>
</head>
<body>
<?
$var_a = 3000;
echo ("var_a : $var_a <br>");

$var_b = "문자랍니다";
echo ("var_b : $var_b <br>");

$var_c = 3500.13;
echo ("var_c : $var_c <br>");

$var_sum = $var_a + $var_c;
echo ("var_a와 var_c를 합치면 $var_sum");
?>


쉽죠? var_a라는 놈은 3000이라는 정수를이다.
var_b는 문자랍니다 라는 문자열이다.
var_c는 3500.13이라는 실수형이다.
근데 $var_sum = $var_a + $var_c; 라는 새로운 놈이 등장했는데 강적일까요 한번 분석해 봅시다.
var_sum은  var_a값(3000) + 더한다 var_c값(3500.13)을...
역쉬 허접이였습니다.

$var_sum이라는 값은 나오겟죠 제가 산수를 못해서 자 값이 6500.13이겠죠?
결과물은 알아서 보세요. 자꾸 보여 주면 안된다는 저만의 허접적인 생각때문에 그러니 직접 해보세요.

자. 가볍게 익히기 1을 끝내셨구요.
익히기 2를 준비 하도록 하겠습니다.
별루 어려운 녀석들은 아직 등장하지 않습니다.

지금 이글을 따라 하시는 분들 level 1입니다.
제목 글쓴이 날짜
마우스를 대면 이미지가 바뀐다. 롤오버 이미지 [3] 하진 2004.12.19
홈페이지를 풀스크린으로 띄우자 - 올플래시로 보이는군요. [21] Multi_Taeji 2004.12.10
이제 미디어플레이어는 가라? 곰플레이어로 실시간으로 감상하자. [13] ⓣing★™ 2004.12.05
이미지 를 브라우져에서 내맘데로 옮겨두기 [8] piasol 2004.12.03
로딩중인 페이지에 효과넣기 [4] LUFFY 2004.11.20
자바스크립트 암호화 [5] 손상모 2004.11.18
iFlower 윈도우리스 플래시 ActiveX 컨트롤 덴디 2004.11.16
ActiveX 플래시 이미지캡쳐 컨트롤 iFlower [1] 덴디 2004.11.15
(수정)배경음악,연월일,시간, 코멘트 셋트.(AM,PM==>오전,오후 순,한국식으로 ...) [4] 민피디 2004.11.10
홈페이지 나갈때 새창띄우기 [2] piasol 2004.11.07
ActiveX 멀티파일업로더 입니다. [9] by風 2004.11.01
행복한고니님의 체크박스를 이미지로 사용하기를 보고... 체크박스옆에 텍스트 부치기 [2] beMax 2004.10.29
JavaScript 구문강조 효과내기 파우링 2004.10.28
모든 이미지, 텍스트 링크에 점선 없애기 [5] 이강민 2004.10.25
XP2인지 체크하여 XP2일때는 팝업허용하라는 메시지 뛰워주기 [3] 아돌 2004.10.19
멀티 파일다운로드 꼼수 (새창버전) [1] 행복한고니 2004.10.14
배열 스크립트 종합선물세트 행복한고니 2004.10.12
체크박스를 이미지로 사용하기 [7] 행복한고니 2004.10.10
Javascript + 플래시 칼라피커 [6] 행복한고니 2004.10.08
자바스크립트로 구현한 윈도우 스타일.. [2] 크래닉스 2004.10.07