- php 작동의 원리
xampp의 php에 들어가 유형이 구성설정인 php에 들어가 php설정파일에 들어갈 수 있음.(파일명:php.ini)
php의 설정을 바꾸면 apache를 껐다켜야 반영, php는 apache에 기생하고 있는 상태임.
이러한 상황에서 성능때문에 사용자들이 웹페이지 접속할떄마다 php.ini 파일 읽어야하면 느리기 때문에 이렇게 설정해놓음.
index.php에서 시간을 나타내는 코드를 작성하면 웹페이지에서 검사로 들어갔을 때,
그 시간을 나타내는 코드가 아닌 실제 시간이 나타나고 새로고침할때마다 갱신이된다.
<!-- php가 시작하는 것을 알려주는 코드는 <?php ?> -->
웹서버는 php 파일을 받았을때 php에게 처리를 위임함. 만약 현재시간을 표시하는 php 코드가 존재할 때 php는 index.php를 열어보고 php가 시작되는 코드 부분은
php에 문법에 따라 해석한 후 시간으로 바꿔버림. 즉 시간이라는 결과만을 웹서버에게 보내고 웹브라우저에게 보냄.
즉 php가 없는 순수하게 html으로만 이루어진 정보를 받음
php에서 화면에 무언가를 표시하고 싶을때는 먼저 php가 시작하는 것을 알리는
<?php echo1;
?>
php에서는 항상 한 구문이 끝나면;를 써줘야 한다. 안하면 작동x
- php 기본 문법(숫자,문자,변수)
<body>
<h1>1+1</h1>
<?php
echo 1+1; #print()를 써도 동일함.
?>
<h1>2-1</h1>
<?php
echo 2-1; #print()를 써도 동일함.
?>
<h1>string</h1>
<?php
echo 'hello world';
?>
<?php
echo 'hello "w"orld';
?>
<h2>concatenation operator</h2>
<!-- 결합연산자.은 좌항과 우항을 결합해 하나의 문자열로 만들어줌 -->
<?php
echo "hello "."world";
?>
<h2>string length</h2>
<?php
echo strlen('hello world');
?>
<h2>variable</h2>
<?php
$a=10;
echo $a+1;
// php에서는 변수앞에 무조건 $를 붙인다.
?>
<br>
<?php
$name='egoing';
echo "Lorem ipsum dolor sit amet ".$name." consectetur adipisicing elit. Fuga consectetur ipsa,
quae porro nulla consequuntur ".$name." totam mollitia possimus, ab est molestias, suscipit cum
architecto culpa sunt corporis ".$name." consequatur odit reiciendis.".$name;
// php에서는 +대신 .을 사용한다.
// 문자와 변수를 결합하기 때문에 .$name.
?>
- parameter
<body>
안녕하세요. <?php echo $_GET['adress']; ?>에 사시는
<?php echo $_GET['name']; ?>님
<!--
http://127.0.0.1/parameter.php?name=liam은 parameter.php라는 웹애플리케이션에
name=liam이라는 입력값을 준것이다.
$_GET을 사용하면 name에 입력하는 것을 가져와주고
echo로 그것을 표시할 수 있게 되는 것이다.
입력값을 하나 더 주고 싶을떄는 ?를 넣는것이 아니라
&를 넣어준다. 맨처음만 ? 적어주고 그 후부터는 &-->
- 함수
<?php
$str= 'aaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaa'
?>
#변수는 <?php ?>안에 하나만 만들 수 있음. 하나 추가하고 싶으면 새로 <?php를 열어야한다.
<h2>strlen() </h2>
<?php
echo strlen($str);
// 함수란 괄호안에 입력이 들어오면 이 함수가 내부적으로 복잡한 과정 거쳐 계산후 그 결과를
반환해주는 작은 프로그램
?>
<h2>nl2br</h2>
<?php echo nl2br($str);
?>
<!-- br을 대신 만들어주는 함수로 줄바꿈을 하면 반영이 된다. 그냥 줄바꿈을 웹은 무시하기에 -->
<?php
var_dump(1+1);
// 괄호안의 값을 출력하면서 데이터 타입알려주는 함수
?>
- 함수 활용
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'];
// id를 자동으로 가져오면서 각자에 해당하는 제목을 자동으로 표시해준다.
?>
</h2>
<?php
echo file_get_contents("data/".$_GET['id']);
// 페이지 id에 맞는 문장 가져오는 법 data 폴더에 html ,css, java 만듦.
// id값으로 들어온 값을 경로로 전환
// file get의 입력값으로 주면 그 경로에 해당되는 파일 찾아 표현해주는 표현식
?>