생활코딩 PHP URL 파라미터 ~ 함수의 사용까지 들었다.
소프트웨어의 성격에 따라 입력과 출력이 다르다. php에선 어떤 입력이 있을 수 있고 그에 따른 출력은 무엇인가를 알아본다.
parameter.php 파일을 만들어 인사를 써본다.
안녕하세요 egoing님
만약에 이런 페이지가 1억개 일 때 이름 부분을 일일이 바꾸는 건 거의 불가능하다.
애플리케이션에 입력값을 바꾸고 싶을 때
http://localhost/parameter.php?name=egoing
?
이후는 전세계적인 약속이다. name은 그냥 예시parameter.php
라는 이름의 php 애플리케이션에게name
은egoing
이다 라는 입력값을 준 것- 하나의 애플리케이션을 통해서 무한히 많은 웹페이지로 인사할 수 있다.
- 예시도 url로 넘어온 name값을 받아올 수 있게 변경한다.
- php에서 약속된 이름의 특수한 변수 :
$_GET['name']
-> name은 임시라서 다른 단어로 변경 가능, 단 url과 세트여야 함안녕하세요 <?php echo $_GET['name']; ?>님
-> 이렇게 입력하면 url에서 name뒤의 값이 문장에 들어가게 된다. 애플리케이션의 입력값을 url을 통해 준 것이다. url에 따라서 parameter.php 애플리케이션은 echo 출력 명령을 통해 결과를 달리 출력해준다. 페이지 소스로 봐도 바뀐 걸로 매번 적용됨
입력값 2개도 가능하다.
안녕하세요 <?php echo $_GET['address'];?>에 사시는
<?php echo $_GET['name'];?>님
url은 http://localhost/parameter.php?name=a&address=서울
- URL 표준 규칙
php와 상관없이 전세계 표준 규칙
제목이 프로그램적으로(동적으로) 바뀌는 애플리케이션 만들기, url의 id값이 무엇이냐에 따라 현재 페이지 제목을 정하는 것까지만 구현
<h1>WEB</h1>
<ol>
<li><a href="index.php?id=HTML">HTML</a></li>
<li><a href="index.php?id=CSS">CSS</a></li>
<li><a href="index.php?id=JavaScript">JavaScript</a></li>
</ol>
<h2>
<?php
echo $_GET['id']
?>
</h2>
Lorem ipsum dolor sit amet,
consectetur adipisicing elit,
sed do eiusmod tempor incididunt
아래와 같이 클릭시 제목이 변경됨
함수를 만들어서 사용해도 되지만 오늘은 다른 사람이 만들어둔 함수를 사용해서 충분한 이해를 먼저 해본다.
프로그래밍 : 내 의도에 따라서 함수들을 시간 순서에 따라 실행되도록 코드를 작성하는 행위
즉, 함수는 프로그래밍의 가장 기본적인 부품 정도로 생각
내가 모르는 점이 있으면 항상 검색을 하라.
- strlen
문자 길이 알아내는 함수. 내장되어있는 함수다.
괄호 안에 들어온 입력값을 내부적으로 어떤 과정을 거쳐 그 결과를 자기 자신으로 교체한다.
- nl2br
새로운 행을 br로 바꾸는 함수
웹브라우저는 기본적으로 줄바꿈을 무시하기 때문에 원본의 줄바꿈도 무시되지만 이 함수를 쓰면 자동으로 원본의 줄바꿈을 br처리하기 때문에 줄바꿈이 인식된다.
- 웹 프로그래밍을 한다는 것은 결국에 내가 하고자 하는 의도에 맞게 함수들을 잘 배치해서 시간 순서에 따라 호출(실행)되도록 하는 게 가장 기본이고 중요한 점이다.
출력하고 싶을 때 쓰는 echo를 잊는다. 자꾸 화면 출력 안되는 걸 본 후에 기억난다.
계속 써서 손에 익히기
드디어 url 파라미터를 배워서 재밌었다. 어떻게 생성하는지 자세하게 듣고 싶었는데 알아서 좋았다. 이전까진 긴가민가했지만 확실하게 기억할 것 같다.