일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- War Game
- overthewire
- OS Command Injection
- 파일 업로드 취약점
- THM
- Authentication
- Leviathan
- BANDiT
- Cookie
- Recon
- over the wire
- ssrf
- active reconnaissance
- privilege escalation
- Server Side Request Forgery
- file upload
- php login page
- SQLi
- FTZ
- php To Do List
- sql injection
- active recon
- tryhackme
- php file upload
- php 파일 업로드하기
- access control
- Cryptography
- Reconnaissance
- php
- php 로그인 페이지 만들기
- Today
- Total
R's Hacking Daily Log
php 변수 다루기 (1) 본문
Step 1 :: 변수 만들기
변수를 만들기 위해서는 (1) 변수명과 (2) 변수에 넣을 값이 필요하다!
변수에 값을 넣기 위해서는 변수명이 왼쪽, 값이 오른쪽에 위치해야한다.
$name = "";
우선, $표시로 name이라는 변수를 "선언"해준다.
PHP는 C언어와 달리 변수를 선언할 때 데이터 타입을 굳이 지정하기 않아도 된다.
현재 시점에서는 name이라는 변수를 만들기만 했을 뿐 아무것도 들어있지 않은 상태임을 알 수 있다.
그렇다면 값을 한 번 넣어보자.
$name = "bluePhone"
위에 보이는 코드 한 줄로 name이라는 변수에 "bluePhone"이라는 값을 "할당"했다.
실제로 name에 bluePhone이라는 값이 들어갔는 지 확인하기 위해서 name 값을 출력해 보자!
echo $name;
echo라는 keyword를 사용해서 변수를 출력해 주면 "bluePhone"이 결과로 나오는 걸 볼 수 있다.
이렇게 변수명을 가져와 값을 가리키는 것을 "참조한다"라고 한다.
Step 2 :: 변수 출력하기
Step1에서는 우리의 첫 번째 변수를 만들고 그 값을 출력해보기까지 했다!
echo $VARIABLE_NAME
echo keyword에 변수명이 따라붙는 아주 간단한 문법으로 값을 출력해 보았는 데
여기에 더불어 2가지 형태의 출력 방법도 가볍게 살펴보도록 하자.
echo "hello World!! {$txt} <br/>";
만약 변숫값을 문자열 중간에서 출력하고 싶다면 위와 같이 $변수명을 " { } " 중괄호로 감싸주면 된다.
echo 'hello world!! '.$txt.'!!';
또는 문자열은 ' ' 따옴표로 묶어주고 " . " 문자 결합 연산자를 이용해 $txt를 연결해 주면 된다.
$var = "message";
$$var = "Hello world~";
echo $message;
마지막으로 살펴볼 형태는 가변 변수라는 개념이 등장한다.
결과를 보기 전에 위의 코드를 먼저 살펴보면 뜬금없이 $message라는 변수가 튀어나온 걸 볼 수 있다.
첫 번째 줄에서는 $var, 두 번째 줄에서는 $$var이라는 변수가 만들어졌다.
이때 " $ "표시를 두 개 사용한 변수를 가변 변수라고 한다.
가변 변수는 선언할 때 다른 변수의 값을 자신의 변수명으로 대체할 수 있는 걸 의미한다.
그 말은 즉슨,
$$var = "Hello world~"
$($var) = "Hello world~" #$var = "message"
$message = "Hello world~"
$var 변수의 값인 "message"가 $($var) 자리로 들어가 $$var이라는 변수명이 $message로 대체된 것이다.
그렇다 보니 $message라는 변수를 출력시키면 "Hello world~"가 결과로 나오는 걸 볼 수 있다.
[ 전체 코드 ]
<?php
$txt = "PHP";
echo "hello World!! {$txt}<br/>";
echo 'hello world!! '.$txt.'!!';
$var = "message";
$$var = "Hello world~";
echo $message;
?>
두 번째 줄을 보면 txt라는 이름을 가진 변수에 "PHP"를 할당해주고 있다.
이는 변수를 선언하는 단계를 건너뛰고 바로 값을 할당할 수 있음을 보여주기도 한다.
마지막 줄에 있는 ?> 태그는 첫 번째 줄에서 나온 <?php에 대한 닫힘 태그인데
닫힘 태그는 생략이 가능하다는 점!
'PHP' 카테고리의 다른 글
php 연산자 다루기 (2) (0) | 2023.07.02 |
---|---|
php 연산자 다루기 (1) (1) | 2023.07.01 |
php 데이터 타입 (0) | 2023.06.30 |
php 상수 다루기 (0) | 2023.06.30 |
php 변수 다루기 (2) (0) | 2023.06.29 |