코드 안에서 PHP언어를 표현하는 방법
PHP 는 보통 html 과 같은 프론트 언어에서 함께 사용이 가능합니다.
하지만 그럼 html 언어와 php언어를 구분해야 하는데 어떻게 해야할까요?
<?php ?>
로 감싸서 안에 php임을 알리게 됩니다.
<>밖의 부분에는 php 가 관여하지 않습니다
<?php
echo 'hello world';
?>
* echo 는 C 언어에서의 printf() 와 같습니다.
항상 끝나는 부분에는 ; 를 입력해 줍니다.
integer - 정수
float - 실수
오퍼레이터(연산자)
정수형은 c 언어와 마찬가지로 + - * / 오퍼레이터( 연산자 ) 가 있습니다.니다.
<!doctype html>
<html>
<body>
<?php
echo 'hello world'
?>
<h2>1</h2>
<?php
echo 1+1;
?>
</body>
</html>
<>밖의 부분에는 php 가 관여하지 않으므로
<h> 사용시 자동으로 줄바꿈이 적용됩니다.
string - 문자형
커넥트 오퍼레이터
큰 따옴표와 작은 따음표로 문자형을 사용하는 방법으로 표현할 수 있습니다.
<?php
echo "hell\"o\" 'w'orld";
?>
기호를 문자로 받아들이는 방법은 \ 를 사용하여 인식하게 하는 방법이 있습니다.
" " 안에 " " 를 넣을순 없으므로 \ 를 사용하거나 ' ' 로 "" 를 감싸서 사용하는 방법이 있습니다.
hello 라는 단어와 world 라는 단어 두개를 합치는 방법은 js 에는 + 가있으나
php는 연결 연산자를 사용하는데요.
<h2>연결 연산자</h2>
<?php
echo "hello"."world";
?>
. 을 이렇게 사용하면 두개의 단어가 연결되게 됩니다.
변수
$와 변수이름을 써서 변수를 선언합니다.
<?php
$a =10;
echo 1+$a;
?>
$가 붙은 부분은 변수라고 생각하면 됩니다.
변수를 활용하면 긴 글의 부분부분을 한번에 수정하는 방법으로 사용이 가능합니다.
<?php
$name="mr.jo";
echo "Lorem ipsum dolor sit amet consectetur adipisicing elit.".$name."
Eius error quam illum recusandae repellat,
nostrum quas beatae repellendus voluptatibus,
exercitationem adipisci ut itaque praesentium dignissimos?".$name."
Non officiis magni laudantium dolorem?";
?>
URL 파라미터
각 회원마다 각자의 웹페이지를 보여줘야 할 때
만약 php 를 사용하지 않는다면 html 파일을 잔뜩 만들어야 할 것입니다.
그런데 수정이 필요하다면 일일이 수정해야하는데, php 가 그것을 해결해 줄 수 있습니다.
url에 GET 값을 넣어주고, 그 값을 php 로 받아서 html 을 만듭니다.
url 부분에 ?name=mr.jo 를 입력해 줍시다.
그럼 그 GET 값을 php 로 받아냅니다.
<html>
<head>
<meta charset=UTF-8>
</head>
<body>
안녕하세요. <?php echo $_GET['name']; ?> 지역 : <?php echo $_GET['address']; ?>
</body>
</html>
만약 중복적으로 하고 싶다면 입력값과 입력값을 구분해주는 & 를 사용하면 됩니다.
url 에 ?name=mr.jo 작성하고 뒤에 &address=서울 이렇게 입력합니다.
$_GET['address']; 작성하고 출력해봅시다.
링크 클릭시 글이 변경
위에서 사용했던 get 값 받아오기를 활용하여 클릭했을때 값이 변경되도록 만들어 봅시다.
<!doctype html>
<html>
<head>
<meta charset=UTF-8>
</head>
<body>
<li><a href="info.php?id=head">head</a></li>
<li><a href="info.php?id=body">body</a></li>
<li><a href="info.php?id=footer">footer</a></li>
<h2><?php echo $_GET['id']; ?></h2>
<p>
Lorem ipsum dolor, sit amet consectetur adipisicing elit.
Fugiat doloribus aliquid magnam, quibusdam quo soluta, est non enim,
corporis ex modi cum quis ipsam necessitatibus sequi beatae nobis dolore neque.
</body>
</html>
먼저 html 에 추가적으로 사용하는 것이므로 html 의 기본 틀을 잡아놓습니다.
각각의 링크를 설정해주고 GET 값을 안에 넣어줍니다.
php 로 GET 값을 받아와 줍니다.
그럼 이제 링크를 클릭할 때마다 값이 바뀌게 됩니다.
함수
nl2br( ) : 괄호 안의 부분의 라인마다 br 태그를 집어넣어줍니다.
ex)
<h2>nl2br</h2>
<?php
$str ="Lorem ipsum dolor sit amet consectetur adipisicing elit.
Recusandae officiis voluptates error ab labore quisquam quaerat cupiditate est velit repellat natus nisi necessitatibus veritatis distinctio sunt, enim totam, praesentium perspiciatis.";
echo nl2br($str);
?>
원래 웹은 공백은 하나밖에 인식하지 않는데, 이 함수를 쓰면 줄바꿈을 인식하여 <br>을 줄바꿈마다
자동 생성해 줍니다.
strlen( ) : 괄호 안의 문자의 길이를 반환하는 함수입니다.
<?php
echo strlen("hello")
?>
함수의 활용
위의 head 와 body 등을 누르면 제목 뿐만 아니라 내용이 변하게 만들어 봅시다.
먼저 디렉토리를 만듭니다.
그 다음 안에 파일을 생성해 줍니다.
이제
안에 아무 내용을 생성해주고
file_get_contents(" ") 함수를 활용해서 파일 안의 내용을 꺼내줍니다
<!doctype html>
<html>
<head>
<meta charset=UTF-8>
</head>
<body>
<li><a href="info.php?id=head">head</a></li>
<li><a href="info.php?id=body">body</a></li>
<li><a href="info.php?id=footer">footer</a></li>
<h2><?php echo $_GET['id']; ?></h2>
<p>
<?php
echo file_get_contents("data/".$_GET['id']);
?>
</body>
</html>
괄호 안에 data/ 를 써서 data 안이라는 것을 알려주고 . 을 통해 data 안의 내용을 받아와 더해줍니다.
클릭하면 내용이 불러와지는 것을 볼 수 있습니다.
'SSS > PHP' 카테고리의 다른 글
php for RDS 함수 (0) | 2021.07.22 |
---|---|
php 기초! xss , 파일경로 보안 (0) | 2021.07.12 |
php 기초! form 과 post 전송방식 (0) | 2021.07.10 |
php 기초! 제어문 ~ 함수 (0) | 2021.07.07 |