[목차]

 

1. PHP

2. 명령형 언어 / 선언형 언어

3. 기출 및 기출 예상 문제 풀이

 

 

 

 

 

[PHP]

* 문법이 필기에서 출제되고 있음!

 

 

1. PHP 기초

: PHP는 서버용 스크립트 언어

 

1-1) 변수 선언

[형식] $변수이름

 

1-2) 출력 함수: echo()

<?php
   $str="takudaddy";
   echo "hero = {$str} \n";
?>
================================
>> hero = takudaddy
 

 

1-3) 데이터 타입

ㄱ. Boolean (논리값)

: true / false

 

ㄴ. 정수 (Integer)

: 100, -44

 

ㄷ. 실수 (Float)

: 3.14, -0.4

 

ㄹ. 문자열 (String)

: "takudaddy", 'master'

 

ㅁ. 배열 (Array)

: 한 쌍의 키(key)와 값(value)로 이루어진 맵(map)으로

구성되는 순서가 있는 집합

 

ㅂ. 객체 (Object)

: 클래스의 인스턴스(Instance)를 저장하기 위한 타입

1   <? php
2   class Hero {
3       function Member() {
4          echo "Takudaddy";
5       }
6   }  
7   $var = new Hero;
8   $var-> Member();
9   ?>

====================================
>> Takudaddy
 

*실행 순서

7. $var = new Hero;

: Hero 클래스의 객체 생성 후 var 변수에 저장

 

8. $var-> Id();

: Hero 클래스의 Member 함수 호출

 

3~5.

: Hero 클래스의 Member 함수 실행

>> 화면에 Takudaddy 출력

 

 

ㅅ. 리소스 (Resource)

: PHP 외부에 존재하는 외부 자원

>> 파일, 데이터베이스 연결 등을 반환할 때 사용

$fp = fopen('file.txt','r');   // fopen() : 파일 열기 함수, r은 읽기 전용 
 

 

ㅇ. NULL

: 아직 어떤한 값도 대입되지 않은 변수

>> 초기화하지 않은 변수는 NULL로 자동 초기화

<?php
   $var;     // <- NULL로 자동 초기화
?>
 

 

 

2. PHP 연산자 (20년 4회 필기 기출)

2-1) 증가/감소 연산자

: ++A, A++, --A, A--

 

2-2) 산술 연산자

: 사칙 연산자 (*, / , +, -)

: 나머지 연산자 (%)

: 제곱 연산자 (**)

 

2-3) 논리 연산자

: 2개의 논리 값을 연산하여 True(1), False(0) 결과 반환

 

 

2-4) 관계 연산자

 

2-5) 할당(대입) 연산자

: +=, -=, *=, /=

(+, - , *, /, %, <<, >> 등 산술, 관계, 논리, 비트 연산자 모두 사용 가능)

 

 

2-6) 비트 연산자

: &, |, ^, ~, <<, >>

 

2-7) 삼항 연산자

: 조건 ? 수식1 : 수식2;

조건이 참이면 수식1, 거짓이면 수식2 실행

 

2-8) 문자열 연산자

. (점) 기호를 사용해 문자열을 연결한다.

$var_1 = "taku";
$var_2 = "daddy";
$var_3 = $var_1.$var_2
echo $var_3;

>> takudaddy 
===========================
echo $var_1, $var2     // echo() 함수에서는 ,(쉼표)를 이용해 문자열 연결이 가능
 

 

2-9) 오류 제어 연산자

: @

ex) @foo() = 만약 함수 foo() 코드 실행 중 에러가 나도 무시한다.

 

 

2-10) 배열 합집합 연산자

 

 

 

3. PHP 제어문

 

* 문제 출제 예시

다음 PHP 제어문 중 반복문이 아닌것은?

 

 

 

4. PHP 배열

: key와 value를 한 쌍으로 저장할 수 있는 자료형 (python의 딕셔너리)

(형식) $배열이름 = array(키1=> 값1, 키2=> 값2, ...)

$arr1 = array("타쿠"=> "010-0101-0101", "대디"=> "101-0101-1010");
echo $arr1["타쿠"];

>> 010-0101-0101
 

* 키 값이 0인 배열 요소는 없으므로 아무것도 출력되지 않는다. (키 값은 1부터)

---------------------------------

echo $arr1[0]

>> 출력 값 없음

 

* 연관 배열 (Associative Array)

: PHP에서는 숫자뿐 아니라 문자열도 배열의 키(index)로 사용할 수 있다.

배열의 인덱스(키)를 정수가 아닌 다양한 타입으로 설정한 배열을 연관 배열이라 한다.

연관 배열을 사용하면 키 값에 좀 더 명확한 의미 부여가 가능하다.

 

배열에 값만 넣는 경우

: Key 값을 따로 지정하지 않을 경우 자동으로 키 값은 0부터 1씩 증가하여 순서대로 저장됨

$arr2 = array("taku", "daddy");   // 값만 있는 경우 키 값은 0부터 시작
echo $arr2[0];

>> taku
 

 

4-1) 배열 요소 추가

 

$arr = array();
$arr[0] = "taku";
$arr[1] = 'daddy';

echo $arr[0];

>> taku

=================================

$arr = array();
$arr[] = "taku";     //인덱스 값을 생략할 경우 자동으로 0부터 시작, 1씩 증가하여 저장
$arr[] = 'daddy';

echo $arr[0];
>> taku
 

 

* 배열의 홀(Hole)

: 특정 인덱스에만 배열 요소를 추가할 경우,

배열 요소가 존재하지 않는 부분을 배열의 홀 이라고 한다.

: PHP 에서 이러한 배열의 홀을 참조하게 되면,

초기화 되지 않은 변수를 참조할 때처럼 NULL을 반환한다.

$arr = array();
#arr[10] = "takudaddy";

>> 배열의 홀: 인덱스 0~9 번째
 

 


 

 

[명령형 언어]

 

: 알고리즘 O, 목표 X

: 순차적인 명령 수행을 기본으로 하는 언어로,

"어떤 방법으로" 문제를 처리할 것인지에 초점을 둠

 

1. 특징

: 알고리즘을 명시하고 목표는 명시하지 않는다. (과정에 의해 결과는 만들어진다)

: 특정 구문의 연산을 이용하여 상태를 변경시키고 프로그램을 동작시킨다.

: 절차적 언어와 객체지향 언어가 있다.

 

 

 

[선언형 언어]

 

: 알고리즘 X, 목표 O

: 프로그램을 어떤 방법으로 해야 하는지를 나타내기보다

"무엇"과 같은지를 설명하는 경우를 선언형 언어라 한다.

 

1. 특징

: 명령형 언어와 반대되는 개념의 언어

: 목표를 명시하고 알고리즘은 명시하지 않음

: 함수형 언어와 논리형 언어 등이 있음

: 가독성이나 재사용성이 좋은

: 직동 순서를 구체적으로 작성하지 않기 때문에 오류가 적음

 

 

2. 선언형 언어 종류

2-1) HTML (Hyper Text Markup Language)

: 인터넷 웹 페이지를 만들 때 사용하는 표준 마크업 언어

: 특별한 데이터 타입이 없는 단순한 텍스트이므로 호환성이 좋고 사용이 편리함

 

2-2) LISP (리스프)

: 인공지능 분야에 사용되는 언어

 

2-3) PROLOG (프롤로그)

: 논리식을 토대로 한 언어로, 인공지능 분야에서의 논리적인 추론이나

패턴 매칭 등에 적합하다.

 

2-4) XML

: 기존 HTML의 단점을 보완하여 웹에서 구조회된 다양한 문서들을

상호 교환할 수 있도록 설계된 언어

: 인터넷 환경에 적합하도록 간결성, 보편성, 활용성에 중점을 두고 설계됨

 

2-5) Haskell(하스켈, 해스켈)

: 함수형 프로그래밍 언어

: 코드가 간결하고 에러 발생 가능성이 낮음

 

2-6) SQL

: 관계형 데이터베이스 관리시스템(RDBMS)의 데이터를 관리하기 위한 언어

 

 

 

 

[명령형 / 선언형 예제]

 

1. 회사에서 집까지 가는 길 찾기

1-1) 명령형 방식 (How)

: 회사 정문 출구를 나와 오른쪽으로 간다 > 직진하다가 마지막 신호등에서 좌회전 한다 > 77번지에 들어간다

 

1-2) 선언형 방식 (What)

: 내 주소는 서울시 성동구 서울숲길77로 44호다.

 

2. C 언어와 SQL

 

 

 

 

[기출 및 기출 예상 문제 풀이]

 

 

 

 

 

 

728x90

+ Recent posts