[PHP 기초문법] 데이터베이스

기초/PHP 2018. 1. 10. 19:21

[데이터베이스] 


데이터베이스란?

여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합(네이버 지식백과 참조)



데이터의 수가 많지 않을 때는 편집하고 할 경우엔 굳이 데이터베이스가 필요가 없다라고 생각할 수
있지만 신기술이 발달해가면서 '빅데이터'도 등장을 하고, 이전 과는 다른 더 많은 데이터를 받아들여서
처리를 해야하는 과정에 도달했다. 그래서 엑셀로 정리와 관리를 하던 시간은 지나고, 더 많은 데이터를
신속하게 처리 및 관리를 해야한다.


데이터베이스의 종류
: mysql, mssql, 오라클, 큐브리드 등 종류가 많다. mssql과 오라클은 데이터베이스를 이용하기 위해선
비용을 지불해야하지만 mysql은 무료로 이용가능 하기 때문에 비용 부분에 민간한 다수의 사람들은 
mysql을 이용한다. 나도 mysql을 자주 이용하는 편이다.

데이터베이스를 사용하기 위해선 간단한 명령어나 접속하는 방법을 알아야 PHP와 데이터베이스를
연동해서 게시판을 만들거나 다른 폼을 만들어서 이용이 가능하다.
생활코딩 PHP 데이터베이스 : https://opentutorials.org/module/6/5175



PHP와 데이터베이스 연동
- PHP에서 데이터베이스를 연동하기 위해선 PDO(PHP Data Object)를 이용해서 PHP에서 데이터베이스를
쉽게 이용가능하다. PDO는 PHP에서 데이터베이스를 이용하기 위해 만들어 놓은 기능의 집합이다.




1
2
3
4
5
6
7
8
9
<?php
$db_host = "localhost";     // 자신의 컴퓨터를 뜻함
$db_user = "root";          // DB에 접속할 아이디
$db_passwd = "1234";      // DB에 접속할 아이디의 비밀번호
$db_name = "mytest";      // DB명
$db_port = 3306;             // 없어도 무방함
$conn = mysql_connect($db_host$db_user$db_passwd);     // DB에 접속할 함수의 값을 $conn변수에 저장함
mysql_select_db($db_name);     // DB에 접속
?>
cs






'기초 > PHP' 카테고리의 다른 글

[PHP기초문법] 파일제어  (0) 2018.01.09
[기초문법/PHP] include와 namespace  (0) 2018.01.08
[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02

설정

트랙백

댓글

[PHP기초문법] 파일제어

기초/PHP 2018. 1. 9. 19:53

[파일제어]


파일 오픈 

$file = './readme.txt';
echo file_get_contents($file);

- file_get_contents() 함수는 파일의 내용을 가지고 오는 함수다. 그리고 file변수에 선언한 확장자는
 현재 디렉토리. php문과 동일한 폴더에 readme.txt 파일이 존재해야한다.



파일 쓰기
$file = './writeme.txt';
file_put_contents($file, 'Hello World!!');

file_put_contents(확장자, '파일내용') 함수는 파일을 오픈해서 문자열을 저장한다.

- 파일을 읽고 쓸때 권한때문에 오류가 생길수도 있으니깐 권한 처리하는 부분도 예제를 보면서 설명하기

1
2
3
4
5
<?php
  $filename = './readme.txt';
  echo file_get_contents($filename);
?>
 
cs

실행화면




파일 복사
$file1 = './readme.txt';
$file2 = './readme.txt.bak';

if(!copy($file1, $file2){
~~
}
copy(파일명1, 새로운 파일명1)는 파일을 다른 이름으로 복사를 하는 함수다.


1
2
3
4
5
6
7
8
9
10
11
<?php
  $file = './readme.txt';
  $newfile = './readme.txt.bak';
 
  if(!copy($file$newfile)){
    echo "File copy is failed";
  } else{
    echo "File copy is Success";
  }
?>
 
cs



실행화면




같은 경로에 newfile로 선언한 이름으로 파일이 생성된 것을 볼 수 있다.




'기초 > PHP' 카테고리의 다른 글

[PHP 기초문법] 데이터베이스  (0) 2018.01.10
[기초문법/PHP] include와 namespace  (0) 2018.01.08
[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02

설정

트랙백

댓글

[기초문법/PHP] include와 namespace

기초/PHP 2018. 1. 8. 20:14

[Include]

include란? PHP에서 include는 다른 php문서를 참조할 경우에 사용을 한다. 화면에 출력 되는 

사이트에는 소스보기를 이용하거나 코드를 볼 수 있는데, 이 소스를 숨겨서 필요할 때 include로

참조를 하여 주요 php문서를 숨기기 위해 사용한다.



1
2
3
4
5
6
<?php
  function helloworld(){
    return "Hello World!!";
  }
?>
 
cs


참조할 php문을 작성한다. 참조하는 php 문서를 func2.php로 저장을 한다.


1
2
3
4
5
6
<?php
  include 'func2.php';
 
  echo helloworld();
?>
 
cs


func2.php를 include문을 이용하여 로드한다. 그래서 func2.php에 코딩한 함수 helloworld()를

출력한다. 


실행화면


include 문을 사용하여 php문서를 로드할 수 있다. 하지만 include문 말고도 로딩할 수 있는 명령이

여러 개가 존재한다. 


- include

- include_once

- require

- require_once 


 4가지의 형태가 있고, include문을 사용해서 로딩을 했을 때는 파일을 실행하지 않고, 경고문을 보내지만

require문 경우엔 php문을 실행중지 시킴으로써 사용이 안 되게 한다.



include.php 문서를 이렇게 수정을 해서 실행을 시켜보자.

1
2
3
4
5
6
7
8
<?php
  require 'func2.php';
  echo helloworld();
 
  require ('func2.php');
  echo helloworld();
?>
 
cs



실행화면


위의 형태로 로딩을 했을 경우엔 올바르게 출력이 되지만, 밑의 방법으로 로딩을 할 시 오류가 뜬다.




[namespace]


namespace란? namespace란 a.php와 b.php 각각의 코드엔 hellofunc()라는 함수란 동일한 이름의 함수가 있을 때

a.php의 hellofunc()와 b.php의 hellofunc()를 따로 따로 구분짓기 위해 사용된다.



kohello.php

1
2
3
4
5
6
7
8
<?php
  namespace lang\ko;
 
  function helloworld(){
    return "안녕하세요";
  }
?>
 
cs


enghello.php

1
2
3
4
5
6
7
8
<?php
  namespace lang\eng;
 
  function helloworld(){
    return "HelloWorld!";
  }
?>
 
cs


name.php

1
2
3
4
5
6
7
8
<?php
  include_once 'kohello.php';
  include_once 'enghello.php';
 
  echo lang\ko\helloworld();
  echo lang\eng\helloworld();
?>
 
cs

실행화면


간단하게 이야기하면 ko라는 방을 만들고, eng라는 방을 만들어서 각각의 방 안에 helloworld() 

함수를 만들었다. 그래서 각 방의 이름을 앞에 붙여서 helloworld()함수를 호출하면 된다.





'기초 > PHP' 카테고리의 다른 글

[PHP 기초문법] 데이터베이스  (0) 2018.01.10
[PHP기초문법] 파일제어  (0) 2018.01.09
[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02

설정

트랙백

댓글

[기초문법] 배열

기초/PHP 2018. 1. 5. 19:34


[배열]

배열이란? 앞서 배웠던 자료형이 여러 개의 방을 가지고 있다는 뜻이다. 연속된 방에 다른 값을

넣어 사용하는 게 배열이다.



int 타입의 '$a'란 변수가 있는데, 변수 뒤에 '$a[5]'를 하면 변수 '$a'와 같은 타입의 변수가 5개가

나열이 되어서 선언이 된다.


 a[0]

a[1] 

a[2]

 a[3]

a[4] 




☆ 배열의 선언

: 배열 선언을 할려면 C언어랑 동일한 방법으로 사용하면 되는데, $배열명 = array(); 혹은 [];로 선언

을 하면 된다.


1
2
3
4
5
6
7
8
9
10
11
<?php
  $a = array();
 
  $a = ['array1''array2''array3'];
 
  for($i=0$i<count($a); $i++){
      echo $a[$i]."<br>";
  }
 
?>
 
cs



실행화면


2번째 줄에 array() 함수를 이용해서 배열을 선언하고 난 후 뒤에 4번째 줄에 배열의 값을

따로 줬지만 굳이 2번째 줄처럼 배열을 선언하고 난 후에 값을 넣어주는 형태 말고, 4번째

줄을 바로 배열 선언을 하여도 상관없다.



☆ 배열 추가


* 끝에 부분에 새로운 배열을 추가할 경우

1
2
3
4
5
6
7
8
9
10
11
<?php
//  $a = array();
  $a = ['array1''array2''array3'];
  array_push($a'array4');
 
  for($i=0$i<count($a); $i++){
      echo $a[$i]."<br>";
  }
 
?>
 
cs



실행화면


* 끝부분에 복수 개의 값을 추가할 경우

1
2
3
4
5
6
7
8
9
10
11
<?php
//  $a = array();
  $a = ['array1''array2''array3'];
  $a = array_merge($a, ['array4''array5']);
 
  for($i=0$i<count($a); $i++){
      echo $a[$i]."<br>";
  }
 
?>
 
cs




실행화면




* 중간에 삽입할 경우



☆ 배열삭제


* 제일 앞 부분을 삭제할 경우

1
2
3
4
5
6
7
8
9
10
<?php
  $a = ['array1''array2''array3''array4','array5'];
  array_shift($a);
 
  for($i=0$i<count($a); $i++){
      echo $a[$i]."<br>";
  }
 
?>
 
cs



실행화면




* 끝 부분을 삭제할 경우

1
2
3
4
5
6
7
8
9
10
<?php
  $a = ['array1''array2''array3''array4','array5'];
  array_pop($a);
 
  for($i=0$i<count($a); $i++){
      echo $a[$i]."<br>";
  }
 
?>
 
cs



실행화면



'기초 > PHP' 카테고리의 다른 글

[PHP기초문법] 파일제어  (0) 2018.01.09
[기초문법/PHP] include와 namespace  (0) 2018.01.08
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02
[기초문법] 연산자  (0) 2018.01.01

설정

트랙백

댓글

[기초문법] 함수

기초/PHP 2018. 1. 4. 19:23



[함수]


함수란? 필요한 기능의 코드를 묶어서 필요한 순간에 호출하여 사용할 때 쓴다. 여러 번 반복되는

코드를 한 꺼번에 묶어서 코드를 재사용할 수 있게 한다.


1
2
3
4
5
6
<?php
    function 함수명(인자, 인자2){
        // Code
        return 반환값;
    }
?>
cs



[함수의 형식]

함수는 function 뒤에 함수의 이름이 오고, 괄호가 온다. 괄호 안에는 함수에 대한 입력 값을 담을

변수의 이름이 오고, 복수의 입력 값을 받을 때는 사이에 ' , '(콤마)로 구분한다. 중괄호에는 함수가

호출 되었을 때 실행할 코드가 있다.


1
2
3
4
5
6
7
8
<?php
  function echoprint($a$b){
    echo "a의 값은 = ".$a."이고, b의 값은 = ".$b." 이다."."<br>";
  }
 
  echo echoprint(14);
?>
 
cs


실행화면





함수의 인자값을 돌려받을 때(return으로 값을 넘김을 받을 때)



1
2
3
4
5
6
7
8
9
10
<?php
 
  $val = 10;
 
  function val_return($val2){
    return $val2;
  }
 
  echo val_return($val);
?>
cs


실행화면


선언되어 있는 값을 함수로 넘겨받아서 함수 안에서 처리를 하고, 처리된 값을 리턴을 해보자.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
 
  $val = 10;
 
  function val_return($val2){
    $val2++;
    return $val2;
  }
 
  $val3 = val_return($val);
 
  echo $val3;
?>
 
cs



실행화면



- return을 해주는 7줄에서 증감연산자를 사용하였을 경우 return값은 증가된 값을 

넘기는 것이 아니라 넘긴을 받은 $val2 값을 그대로 리턴한다. 그 이유는 증감연산자

자체가 문장 다음줄에 값을 증가를 시키지만 $val2는 리턴을 한 상태에서 함수가 종료

된 후에 증감이 되는 형식이라서 함수가 return을 한 상태면 이미 함수 자체가 끝났다.

그래서 return 넘기는 부분에서 증감연산자를 사용하며 아무 소용이 없게 된다.








'기초 > PHP' 카테고리의 다른 글

[기초문법/PHP] include와 namespace  (0) 2018.01.08
[기초문법] 배열  (0) 2018.01.05
[기초문법] 제어문  (0) 2018.01.02
[기초문법] 연산자  (0) 2018.01.01
[기초문법] 변수  (0) 2017.12.29

설정

트랙백

댓글

[기초문법] 제어문

기초/PHP 2018. 1. 2. 21:06


[제어문]

제어문이란? 프로그램의 흐름을 제어한다. PHP는 절차식 언어이기 때문에 프로그램의 흐름이 기본적으로

위에서 아래로 흐르는 구조다. 이때 흐름을 거슬러 올라가거나 아니면 특정 부분으로 건너 뛰고 싶을 때,

이를 처리할 수 있는 제어구조가 필요하게 된다.


IF구문

: 표현식이 참인 경우에 다음 구문을 실행

1
2
3
4
5
6
7
<?php
    $a = 10;
 
    if($a == 10){    // 괄호안이 참이면 다음을 실행 { } 안에 내용을 실행시킴.
        echo "a는 10이다.";
    }
?>
cs



ELSE구문

: IF 구문의 표현식이 거짓인 경우 다음 구문을 실행


1
2
3
4
5
6
7
8
9
10
<?php
    $a = 10;
 
    if($a == 4){    // 괄호안이 참이면 다음을 실행 { } 안에 내용을 실행시킴.
        echo "a는 4입니다.";
    }
    else{
        echo "a는 4가 아닙니다.";
    }
?>
cs



실행결과

ELSE IF구문

: IF구문 이외의 조건을 걸어서 제어를 할 경우에 사용한다.


1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    $a = 10;
 
    if($a == 4){    // 괄호안이 참이면 다음을 실행 { } 안에 내용을 실행시킴.
        echo "$a는 10이다.";
    }
    else if($a == 10){
        echo "a는 4가 아니고 10입니다.";
    }
    else{
        echo "$a는 4가 아닙니다.";
    }
?>
cs


실행결과




WHILE 구문

: 해당 구문을 지속적으로 반복해서 실행


1
2
3
4
5
6
7
8
<?php
    $a = 0;
    while($a <= 10){
        echo "a의 값은 : ".$a." 입니다."."<br>";
        $a++;
    }
?>
 
cs


실행결과



'기초 > PHP' 카테고리의 다른 글

[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 연산자  (0) 2018.01.01
[기초문법] 변수  (0) 2017.12.29
[기초문법] 출력  (0) 2017.12.28

설정

트랙백

댓글

[기초문법] 연산자

기초/PHP 2018. 1. 1. 23:24


[연산자]


연산자란? 더하기나 빼기, 나누기 등 값을 처리하여서 이벤트가 발생하게 되는 상황을 만들게

하는 게 연산자다. 저런 값을 얻어서 '함수'나 '제어문'을 통해 처리 결과 값을 보기 위함이다.


산술 연산자 

 + 더하기

 - 빼기

 * 곱하기

 / 나누기

 % 나머지

 ++ 1증가

 -- 1감소

 $a = 7;

 $b = 3;

 $c = $a + $b;

 $c = $a - $b;

 $a++;

 $b--;

관계 연산자

 < 작다

 > 크다

 <= 작거나 같다

 >= 크거다 같다

 == 같다

 != 값이 아니면(다르면) 

 $a < $b;

 $a > $b;

 $a <= $b;

 $a >= $b;

 $a == $b;

 $a != $b

논리 연산자 

 &&

 ||

 



'기초 > PHP' 카테고리의 다른 글

[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02
[기초문법] 변수  (0) 2017.12.29
[기초문법] 출력  (0) 2017.12.28

설정

트랙백

댓글

[기초문법] 변수

기초/PHP 2017. 12. 29. 20:42


[변수] 


변수란? 변수는 말 그대로 "변하는 수", 프로그래밍에서 변수란 프로그램 내에서 어떤 값을 임시로

저장하기 위해 메모리 공간에 이름을 붙여놓은 것 PHP에서는 변수선언 시 $ 표시를 앞에 붙여서

$name 을 선언하면 name이란 이름의 변수를 선언한다는 뜻이다.


※ 변수형(Type)

진리값, 정수, 실수, 문자열, 배열, 객체, 리소스, 널 형태가 있다.

변수에서 타입이 존재하는 이유는 제한적인 메모리 공간 때문에 변수의 종류가 있다.


1. 진리값

진리값은 진실(True)나 거짓(False)를 의미힌다.


2. 정수

$a = 1111; //십진수

$a = 2222; // 십진수

$a = -1; // 음수

$a = 0123; // 8진수

$a = 0x12; // 16진수


PHP에서 정수선언을 하게 되면 메모리에서는 4바이트의 메모리 공간을 부여한다. 


3. 실수

$a = 1.2222;

$a = 1.2e3;

두번째는 10의 3승인 1000이 곱해진다는 뜻. 실수를 표현하기 위해서는 소수점이 필요하다.



4. 문자열

$a = "Hello World!";

$a = "LOVEYOU";

큰 따옴표를 사용애서 큰 따옴표 사이에 문자열 써넣으면 된다.





'기초 > PHP' 카테고리의 다른 글

[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02
[기초문법] 연산자  (0) 2018.01.01
[기초문법] 출력  (0) 2017.12.28

설정

트랙백

댓글

[기초문법] 출력

기초/PHP 2017. 12. 28. 20:23

[PHP 출력]


PHP의 스크립트 작성시엔 확장자를 ".php"라는 확장자로 스크립트 파일을 작성해야한다.


스크립트 파일안에는 처음과 끝을 시작하는 부분이 있는데, <?php ?> 이 문구 안에 php의


출력문, 처리할 제어문을 넣으면 된다.



<?php


   (문구)


?>





위의 형식으로 스크립트를 작성하면 되고, html 문서 안에 PHP 문을 사용할 시엔 PHP문을 사용할 부분에


<? ?> 이런 형식안에 작성해서 넣으면 된다.



html 문 안에 저렇게 표시를 하고, 확장자를 .php 로 저장한다.

(확장자를 .html로 저장하면 php문이 작동이 안 된다.) 

localhost (자신의 웹서버)로 접속을 해서 작성한 스크립트를 확인할 수 있다. 





※ 문장을 연결해서 출력문을 출력하게 된다면 "."를 사용하면 된다.



  • 연결할 문장에 사이에 . 을 찍어주면 밑에 출력화면처럼 출력이 된다. 



                       - 출력화면

                               




※ 주석 사용방법

: 문자 뒤에 설명을 할 시에 사용하는 경우엔 // 이것을 사용

여러 줄에 걸쳐서 주석으로 만들 경우엔 /* */ 이것을 사용



※ world 뒷쪽에 보면 ."<br>"을 붙여줬는데, 저것을 붙여주지 않으면 문장이 연결되어 출력이 되기 때문에 저 문장을 뒷쪽에 붙여줬다. 

- 출력화면




'기초 > PHP' 카테고리의 다른 글

[기초문법] 배열  (0) 2018.01.05
[기초문법] 함수  (0) 2018.01.04
[기초문법] 제어문  (0) 2018.01.02
[기초문법] 연산자  (0) 2018.01.01
[기초문법] 변수  (0) 2017.12.29

설정

트랙백

댓글