본 게시글은 유튜브 생활코딩 온라인강의를 시청한 후 학습한 정보를 기록하는 목적의 게시글입니다.

생각의 흐름에 따라 작성된 게시글입니다. 가독성이 떨어질 수 있습니다.

생활코딩 유튜브

 

생활코딩

일반인에게 프로그래밍을 알려주는 온라인/오프라인 활동 입니다.

www.youtube.com

생활코딩 사이트

 

생활코딩

hello world 생활코딩의 세계에 오신 것을 환영합니다. 생활코딩은 일반인들에게 프로그래밍을 알려주는 무료 온라인, 오프라인 수업입니다.  어떻게 공부할 것인가를 생각해보기 전에 왜 프로그래밍을 공부하는 이유에 대한 이유를 함께 생각해보면 좋을 것 같습니다. 아래 영상을 한번 보시죠. 온라인 강의 소개 입문자의 가장 큰 고충은 '무엇을 모르는지 모르는 상태'일 겁니다. 온라인에는 프로그래밍을 익히는 데 필요한 거의 모든 정보가 있지만, 이 지식들은

opentutorials.org

생활코딩 WEP3 PHP & MySQL을 수강하기 위한 선수과목인

WEB2 - PHPDATABASE2 - MySQL에 대한 수강 기록입니다.

수강 일정은 야학의 수강계획표에 따릅니다.


#0.

생활코딩의 WEB2 PHP의 수업은 WEB1 HTML에 의존하는 수업이다.

HTML에 대한 지식이 부족하다면 WEB1 HTML먼저 학습하도록 하자.

HTML을 직접 타이핑해서 웹페이지를 만드는 '불만족'에 탄생한 PHP에 대하여 학습해보자.

이번 커리큘럼을 통해 PHP의 문법과 웹 애플리케이션의 제작법을 학습할 예정이다.

 

#1.

이번 수업의 목표?

웹사이트의 규모가 커질 수록 순수한 HTML만으론 생산성의 한계에 절망하게 된다.

 PHP를 통해 어떻게 웹사이트의 유지, 보수의 향상성을 비약적으로 끌어올릴 수 있는지 궁금하다면,

다음 수업을 수강하도록 하자.

 

#2.

WEB1의 수업에서 WAMP를 설치했다면 이미 PHP가 설치된 상황이다.

(Window + Apache + MySQL + PHP)

만약 설치되지 않았다면 다음의 절차를 따르자. 필자는 윈도우 환경이다.

bitnami.com/stack/wamp

 

WAMP

Bitnami WAMP Stack provides a complete, fully-integrated and ready to run WAMP development environment. In addition to PHP, MySQL and Apache, it includes FastCGI, OpenSSL, phpMyAdmin, ModSecurity, SQLite, ImageMagick, xDebug, Xcache, OpenLDAP, ModSecurity,

bitnami.com

로그인하지 않고 파일을 다운받을 수 있다.

부가패키지와 설치 경로, MySQL의 비밀번호를 입력하면 프로그렘을 다운받을 수 있다.

해당 이미지와 같은 웹사이트가 나온다면 설치 완료!

C:\Bitnami\wampstack-7.4.12-0

(버전 명은 다를 수 있음)

경로를 바꾸지 않았다면, 해당 경로에서 'manager-windows.exe'를 통해 bitnami manager를 실행할 수 있다.

C:\Bitnami\wampstack-7.4.12-0\apache2\htdocs

(버전 명은 다를 수 있음)

마찬가지로 경로를 수정하지 않았다면, PHP는 해당 폴더에 있는 페이지를 읽게 된다.

본인에게 익숙한 텍스트에디터로 간단한 실험을 해보자.

<?php 
    phpinfo();
?>

 test.php를 생성하여 위의 내용을 코드로 입력하고 저장하자.

127.0.0.1/test.php의 URL로 접속했을 때, 설치된 PHP의 정보가 출력되는 것을 확인할 수 있다.

 

#2-2.

C:\Bitnami\wampstack-7.4.12-0\php

해당 경로에서 우리가 코딩을 실수했을 때를 위한 기능을 확장해보도록 하자.

php.ini를 우클릭하여 편집

display_errors = Off 를 display_errors = On으로 수정해주자.

지금은 학습을 위해 error를 출력하지만,

실제로 서비스하게 될 때는 사용자에게도 에러 메세지가 출력되기 때문에 반드시 Off로 바꿔주도록 하자.

마찬가지로, opcache.enable=1을 opcache.enable=0으로 수정하자.

opcache는 php의 성능을 높여주기 위한 것인데, 수정 시 반응성이 떨어지므로 꺼주도록 하자.

이후 manager - server에서 apache 서버를 restart해주도록 하자.

우리가 사용하고 있는 php는 apache 서버에 기생하고 있기 때문에, 반영을 위해서 apache 서버를 꺼주는 것,

 

#3.

여기서는 HTML만으로 만들어진 웹페이지와 PHP로 만들어진 웹페이지의 차이를 보여줍니다. PHP로 만들어진 웹페이지는 요청할 때마다 프로그래밍적으로 만들어지기 때문에 동적입니다. 동적이라는 것의 의미를 잘 음미해보세요.

 

이번 영상과 함께 참고하면 좋은 글

 

PHP 간단 개념과 장단점에 대해서 - Wishket

개발을 조금만 알면 더 나은 프로젝트를 만들 수 있다! 클라이언트님들을 위한 개발 토막 상식, '3분 개발 훑어보기'를 위시켓에서 전해드립니다:) - PHP 편

blog.wishket.com

 

html

<!doctype html>
<html>
  <body>
    2018-01-20 18:36:01
  </body>
</html>

php

<!doctype html>
<html>
  <body>
    <?php
      echo date('Y-m-d H:i:s');
    ?>
  </body>
</html>

 

정적인 html과는 달리, php를 통하여 동적으로 파일을 만들 수 있는 것을 알 수 있다.

즉, 한번 html파일을 만들었다면 언제나 똑같은 정보만 전달하는 반면에

확장자가 php라면 php 문법에 따라 해석해서 동작하게 된다.

 

#4.

컴퓨터 언어를 배우는 중요한 흐름은 그 언어가 지원하는 데이터의 형식들을 익히고, 형식별로 데이터를 처리하는 방법을 알아가는 과정입니다. 여기서는 가장 많이 사용되는 형식인 숫자와 문자열을 살펴봄으로서 데이터 타입이 무엇인가에 대한 감을 잡아보는 시간입니다.

 

생활코딩 강의에 익숙하다면, 검색은 우리를 모르는 것으로부터 구원해줄 동아줄이란 것을 잘 알 것이다.

php에서 지원해주는 데이터타입을 확인해보기 위해 검색으로 정보를 보충하자.

 

PHP: Introduction - Manual

No, despite description here a `callable` still is not a a full-fledged primitive type in PHP.

www.php.net

 

#4-2.

php의 데이터 타입 중 숫자를 다루는 방법에 대하여 알아보자.

php의 integer 공식문서를 살펴보면,

 

PHP: Integers - Manual

Note that the soft-typing of numbers in PHP means that some things become very difficult. For example, efficiently emulating the more common linear congruential generators (LCGs) for fast, deterministic, pseudo-randomness. The naive code to create the next

www.php.net

php를 통해 정수를 표현하는 것은 간단한 것을 알 수 있다. 아래의 코드로 실습해보자.

<!doctype html>
<html>
<body>
  <h1>Number & Arithmetic Operator</h1>
  <h2>1+1</h2>
  <?php
  echo 1+1;
  ?>
  <h2>2-1</h2>
  <?php
  echo 2-1;
 ?>
 <h2>2*2</h2>
 <?php
 echo 2*2;
 ?>
 <h2>4/2</h2>
 <?php
 echo 4/2;
 ?>
</body>
</html>

php에서 데이터 형식을 막론하고 화면에 출력하는 방법은 'echo'이다.

또한 하나의 코드가 끝나면 세미콜론(;)을 반드시 찍어주어야 한다.

또한 산술연산자(+, -, *, /)의 사용이 가능함을 알 수 있다.

 

#4-3.

다음으로 php에서 문자를 표현하는 방법을 공식문서를 통해 확인해보자.

 

PHP: Strings - Manual

I've been a PHP programmer for a decade, and I've always been using the "single-quoted literal" and "period-concatenation" method of string creation. But I wanted to answer the performance question once and for all, using sufficient numbers of iterations a

www.php.net

 

php에서 string을 표현하는 기호 중 가장 중요한 두 가지는 'single quoted'와 'double quoted'이다.

<!doctype html>
<html>
<body>
  <h1>String & String Operator</h1>
<?php
echo "Hello \"w\"ord";
?>
  <h2>concatenation operator</h2>
  <?php
  echo "Hello "."world";
  ?>
  <h2>String length function</h2>
  <?php
  echo strlen("Hello world");
   ?>
</body>
</html>

php에서 '\(백슬레쉬)'를 통해 ", ' 등의 문자를 escape할 수 있다.

' . '을 통해 문자열을 결합할 수 있다.

strlen() 함수를 통해서 문자열의 길이를 숫자로 반환할 수도 있다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기