1. PHP
- C/Perl의 장점을 이어받은 객체 지향 언어
- 웹 개발을 위해 만들어진 스크립트 언어
- 장점
> 범용성을 지닌 오픈소스 프로젝트
> 다양한 플랫폼/DBMS 지원
> 설치, 개발, 운용이 쉬움
> 저렴한 가격, 고성능, 대규모 프로젝트도 가능!!
- 작동원리
> php파일을 사용자가 웹서버로 전송하면, php모듈에 의해 HTML파일로 해석
(PHP모듈에서 필요시 DBMS로의 데이터 수신및 발신)
> 해석된 html파일을 웹서버를통해 사용자에게 전달 / 랜더링 후 출력
- PHP와 조합되는 가장 많은 형태(Cost Free)
> Linux + Apache + MySQL + PHP / LAMP
2. PHP 기초적 문법
- PHP 생성 블럭 : <?php ?>
- 블럭 내에서의 주석 : //, /* */(C 스타일)
- 변수는 $로 시작해야지 된다.(Perl스타일)
- 문자열은 " "를이용하여 나타내며, C와 유사한 스트링 연산자를 제공해준다.
- 기초적 연산자는 C와 모두 동일하다.
- 데이터 타입 : 스크립트언어의 특징으로 동적으로 데이터형이 자동으로 변한다.
> 사용자에 의한 강제적형변환 기능도 제공을 해준다.
> boolean (true/false), integer, float, String, Array 등이 있다.
3. 변수의 확장성
- PHP는 출력할때 외부의 변수를 확장을 하는가 안하난가를 정할수 있다.
> 변수의 확장이란? 외부의 변수를 치환해서 보여주는가, 아니면 TEXT그대로를 보여주는 가의 문제
ex) echo 'He is {$name}.' // ' '는 변수확장이 불가능하다.
// 따라서 He is {$name}. 이라고 그대로 출력된다.
echo "He is {$name}." // " "는 변수확장이 가능하다. 만약 $name = "kim"; 이라고 전에 선언되있었다면
// 따라서 He is kim. 라고 출력이 된다.
echo << 'EOT' xxx EOT // EOT는 EOT가 다시나오기 전까지의 모든 것을 문자열로 묶어준다.
// 'EOT'로 시작된 것은 내부의 변수가 확장되지 않고 TEXT그대로 나타난다.
echo << EOT xxx EOT // 반면 다음과같이 ' ' 가없는 EOT는 변수의 확장을 실시한다.
4. Array
- 순서가 있는 Map형(Hash형 개념의 확장) 자료형으로 제공해준다.
- Array함수를 이용해서 선언하며, 'key' => 'value' 형식으로 쓰고, key값이 없이 온 값은
알아서 0부터 index값을 지정해준다.
ex) $a = array ( 'name' => 'KIM', 'age' => '23', 173, 60 } // key값이 없는 173과 60의 index는 0,1 이다.
echo {$a['name']} // KIM을 출력해준다.
echo {$a['0']} {$a['1']} // 173과 60을 출력해준다.
5. 제어문
- C와 동일
6. 상수 지정(Constant)
- define함수를 이용하여 정의하며 일반적으로 대문자만을 이용한다.
- '_'로 시작하는 이름은 일반적으로 시스템에서 사용하고 있으므로 피하는 것이 좋다.
ex) define("NAME", "KIM");
7. 함수
- function 키워드를 이용하여 함수를 작성한다.
- function의 argument 형식
> function test($value) {} // call by value
function test(&$value) {} // call by reference
function test($array) {} // 배열도 올수 있다.
function test($value = "default") {} // value에 값이 없으면 value값을 default로 준다.
8. Include / Require
- 특정 php문서의 내용을 해당자리에 포함하여 실행
- include : 파일을 찾지못하면 경고만 발생 / require : 파일을 찾지못하면 에러
- _once : include나 require뒤에 _once를 붙이면 특정파일이 한번만 include되도록 보장
- 개발시에는 require_once를 이용하여 원하는 페이지가 사용자에게 전달될수 있도록 만든다.
9. 전역변수
- 함수내에서 선언한 변수를 전역변수로 생각하는 JavaScript와 반대로 PHP는 지역변수를 우선으로 생각한다.
- JavaScript에서 var로 지역변수로 생성해줘서 지역변수로 쓰는 것처럼,
PHP는 global을 써서 전역변수를 가져온다.
10. Form Handling
- 폼테그를 이용한 입력은 다음 변수를 통해 받을 수 있다.
- GET메소드 : $_GET["name"] / POST메소드 : $_POST['name']
> $_REQUEST = $_GET + $_POST + $_COOKIE
(COOKIE가 사용자와 겹칠 가능성이 높으므로 사용을 피한다.)
- C/Perl의 장점을 이어받은 객체 지향 언어
- 웹 개발을 위해 만들어진 스크립트 언어
- 장점
> 범용성을 지닌 오픈소스 프로젝트
> 다양한 플랫폼/DBMS 지원
> 설치, 개발, 운용이 쉬움
> 저렴한 가격, 고성능, 대규모 프로젝트도 가능!!
- 작동원리
> php파일을 사용자가 웹서버로 전송하면, php모듈에 의해 HTML파일로 해석
(PHP모듈에서 필요시 DBMS로의 데이터 수신및 발신)
> 해석된 html파일을 웹서버를통해 사용자에게 전달 / 랜더링 후 출력
- PHP와 조합되는 가장 많은 형태(Cost Free)
> Linux + Apache + MySQL + PHP / LAMP
2. PHP 기초적 문법
- PHP 생성 블럭 : <?php ?>
- 블럭 내에서의 주석 : //, /* */(C 스타일)
- 변수는 $로 시작해야지 된다.(Perl스타일)
- 문자열은 " "를이용하여 나타내며, C와 유사한 스트링 연산자를 제공해준다.
- 기초적 연산자는 C와 모두 동일하다.
- 데이터 타입 : 스크립트언어의 특징으로 동적으로 데이터형이 자동으로 변한다.
> 사용자에 의한 강제적형변환 기능도 제공을 해준다.
> boolean (true/false), integer, float, String, Array 등이 있다.
3. 변수의 확장성
- PHP는 출력할때 외부의 변수를 확장을 하는가 안하난가를 정할수 있다.
> 변수의 확장이란? 외부의 변수를 치환해서 보여주는가, 아니면 TEXT그대로를 보여주는 가의 문제
ex) echo 'He is {$name}.' // ' '는 변수확장이 불가능하다.
// 따라서 He is {$name}. 이라고 그대로 출력된다.
echo "He is {$name}." // " "는 변수확장이 가능하다. 만약 $name = "kim"; 이라고 전에 선언되있었다면
// 따라서 He is kim. 라고 출력이 된다.
echo << 'EOT' xxx EOT // EOT는 EOT가 다시나오기 전까지의 모든 것을 문자열로 묶어준다.
// 'EOT'로 시작된 것은 내부의 변수가 확장되지 않고 TEXT그대로 나타난다.
echo << EOT xxx EOT // 반면 다음과같이 ' ' 가없는 EOT는 변수의 확장을 실시한다.
4. Array
- 순서가 있는 Map형(Hash형 개념의 확장) 자료형으로 제공해준다.
- Array함수를 이용해서 선언하며, 'key' => 'value' 형식으로 쓰고, key값이 없이 온 값은
알아서 0부터 index값을 지정해준다.
ex) $a = array ( 'name' => 'KIM', 'age' => '23', 173, 60 } // key값이 없는 173과 60의 index는 0,1 이다.
echo {$a['name']} // KIM을 출력해준다.
echo {$a['0']} {$a['1']} // 173과 60을 출력해준다.
5. 제어문
- C와 동일
6. 상수 지정(Constant)
- define함수를 이용하여 정의하며 일반적으로 대문자만을 이용한다.
- '_'로 시작하는 이름은 일반적으로 시스템에서 사용하고 있으므로 피하는 것이 좋다.
ex) define("NAME", "KIM");
7. 함수
- function 키워드를 이용하여 함수를 작성한다.
- function의 argument 형식
> function test($value) {} // call by value
function test(&$value) {} // call by reference
function test($array) {} // 배열도 올수 있다.
function test($value = "default") {} // value에 값이 없으면 value값을 default로 준다.
8. Include / Require
- 특정 php문서의 내용을 해당자리에 포함하여 실행
- include : 파일을 찾지못하면 경고만 발생 / require : 파일을 찾지못하면 에러
- _once : include나 require뒤에 _once를 붙이면 특정파일이 한번만 include되도록 보장
- 개발시에는 require_once를 이용하여 원하는 페이지가 사용자에게 전달될수 있도록 만든다.
9. 전역변수
- 함수내에서 선언한 변수를 전역변수로 생각하는 JavaScript와 반대로 PHP는 지역변수를 우선으로 생각한다.
- JavaScript에서 var로 지역변수로 생성해줘서 지역변수로 쓰는 것처럼,
PHP는 global을 써서 전역변수를 가져온다.
10. Form Handling
- 폼테그를 이용한 입력은 다음 변수를 통해 받을 수 있다.
- GET메소드 : $_GET["name"] / POST메소드 : $_POST['name']
> $_REQUEST = $_GET + $_POST + $_COOKIE
(COOKIE가 사용자와 겹칠 가능성이 높으므로 사용을 피한다.)