웹마스터 팁

PHP 익히기 3

2003.06.17 17:50

구리구리

안녕하세요 구리구리입니다.

강좌가 늦어진 점 죄송합니다. 요즘 배달이 바빠서 (?) -_ㅡ;;

자 2편에서는 변수라는 녀석을 알아봤는데요. 그리 어렵지는 않았습니다.

오늘도 그다지 어렵지 않는 녀석들만 등장합니다. 그렇다고! 긴장하지 않으시면 다음편으로 못가시니.

긴장들 하시기 바랍니다.

자 이제부터 변수의 활용을 배워보도록 하겠습니다.


1편에서 배운거 기억하시죠?

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

오늘은 그중에 array(배열)랑 object(객체)에 대해 알아 보자구요.

자 배열변수의 정의!

PHP에서 배열은 두가지의 종류가 있습니다 하나는 배열 단일값 원소를 가지고 있는 스칼라(sclar) x파일에 나오는
여자 이름이랑 비슷하죠? 그리고 다른 배열은 하나의 키(key)와 값(value)의 상을 하나의 원소를 갖는 연관 배열(associative array)라는 것이 있습니다 하여간 말들 겁나 어렵게 씁니다 -_ㅡ;;

외우시라는게 아니라 이런 종류들이 있다는 것이죠.

자 한번 스칼라에 대해 알아 봅시다!

<?
$name[] = "x파일";    //  $name[0]
$name[] = "여자중인공";     // $name[1]
$name[] = "멀더";              // $name[2]
?>

위에 저게 먼소리여????  뭔소리긴 뭡니까 배열이쥐! 아신다구요? 근데 이상한건 // 주석뒤에 붙은 녀석들이
재미 있습니다 $name[0] 부터 시작을 하죠?? 배열의 원소의 인텍스는 c나 펄처럼 0부터 시작합니다.
그냥 모든 배열은 0부터 시작하신다고 알아 두시면 편하실것 같습니다.

<?
$name[0] = "x파일";
$name[1] = "여자주인공";
$name[2] = "멀더";
?>
이것과 같은거죠. 배열을 할때 순차적으로 읽어 준다고 생각하면 됩니다. 그래서 위에부터 0,1,2 값을 넣어주지
않아도 자신이 0 1 2 처럼 인식한다는 말이죠

근데 왜 이방법 말고 다른 방법은 없나??? 좀 편하게??
그래서 배열(array)라는 녀석이 등장합니다.

$name = array("x파일", "여자주인공", "멀더");
이게 저기 위에 내용과 같습니다.

우리들이 책을 읽을때 위에서 아래로 읽잖아요? 그쵸? 아래서 부터 위로 읽는 분은 없을꺼에요.
그래서 php인식을 하는 녀석도 위에서 읽는 겁니다.
그리고 우리가 책을 읽을때 왼쪽에서부터 오른쪽으로 읽죠? 역쉬 php도 마찮가지 입니다.

한번 저렇게 해보시고 출력물을 확인하세요.

이정도가 배열변수라고 생각하고 우선적으로 넘어가자구요 복잡해지면 더 마음 심난해요. 여자친구도 도망갔는데.
-_ㅡ;

음 근데 문뜩 이런 생각이 나더군요 여자친구가 선생이거든요 근데 아그들 이름이랑 성적을 연관해서 보여주는
방법은 없을까??? 그래서 저는 말했죠. 연관지어서 적어! 그후론 여자친구는 연관배열과 바람이나 도망을 갔습니다.

자. 연관배열이라는 녀석을 만나보자구요. 이놈을 확실하게 알아 두셔야 여자친구 뺐기지 않습니다.

$list = array("A녀석"=>"99점","B녀석"=>"30점","C녀석"=>"100점");

아따 어려운 녀석이죠?? 점땡이들도 많고....
근데 저기에는 연관배열에 중요한 요소들이 다 들어가 있다네요? 아시죠?
위에서 배운것 처럼 연관배열은 하나의 키(집 들어갈때 쓰는 키 아닙니다.) 값의 쌍을 하나의 원소로 갖은 배열

아 어렵다. 결국 연관배열은 키와 값을 가져야 한다라는 말입니다.
근데 아무리 봐도

$list = array("A녀석"=>"99점","B녀석"=>"30점","C녀석"=>"100점");  
이문장에서 키와 값을 모르겠는데요??
"A녀석" "B녀석" "C녀석" 은$list의 참조키가 됩니다.
선생님들이 성적을 부를때 김똥개 90점 이런식으로 하죠?
김똥개는 키가 되는 겁니다. 그리고 90점이라는 녀석은 값이 되겠죠?

자 이젠 어느정도 이해가 되시죠?
$list = array("A녀석"=>"99점","B녀석"=>"30점","C녀석"=>"100점");
이 내용중에 키와 값을 고르세요.
다음 4편에 닶을 올리도록 하겠습니다.

하지만 다른 방법으로도 할수 있어요? 저는 타이핑치는걸 무지 좋아해요. 그럼 이렇게 해보세요
$list["A녀석"] = 99점;
$list["B녀석"] = 30점;
$list["C녀석"] = 100점;

이런식으로 해도 내용은 같아요.

요즘 제가 바빠서 강좌를 올리시간이 솔직히 조금 버거워요. ^^; 하지만 조금씩이나마 도움이 되고져
올리는 것이니 너무 욕하지들 마시구요. 조금씩 나간다고 너무 욕하지 마세요 ^^;

자 마지막 문제 나갑니다. 이것 못풀면 처음부터 다쉬!

<?
$name[] = "똥개1";
$name[] = "슈퍼똥개";
$name[] = "송아지";
$name["표준"] = "망아지";
$name[] = "여자친구 돌려도";

echo ("$name[0] - $name[1] - $name[2] - $name[표준] - $name[3]");
?>
출력은 어떻게 될까요?

우선 무조건  만들어서 결과물을 보지 마시고 머리에서 해보세요.
자 그리고
echo ("$name[0] - $name[1] - $name[2] - $name[표준] - $name[3]"); 의
내용을 바꿔 가며 해봅시다.

echo ("$name[2] - $name[0] - $name[1] - $name[3] - $name[표준]");
한번씩 해보시구요.

답은 역쉬 4편에 기록하겠습니다.

다음 4편에는 시간을 많이 내도록 하겠습니다. 3편 강좌를 번개불에 뭐먹듯이 해서 죄송합니다.
4편에서는 다차원 배열과 객체형 변수 정적변수등을 배워보도록 하겠습니다.