본문 바로가기

Language/PHP

[PHP] session 세션(session)은 컴퓨터 과학에서, 특히 네트워크 분야에서 반영구적이고 상호작용적인 정보 교환이며 둘 이상의 통신 장치나 컴퓨터와 사용자 간의 대화나 만남을 의미하는 다이얼로그(dialogue)이다.넓은 의미에서의 세션은 클라이언트가 서버에 접속하여 접속을 종료하기까지를 의미한다. HTTP 프로토콜은 stateless의 특성을 가져 클라이언트 측의 정보를 유지할 방법이 없다. 따라서 클라이언트에 대한 정보를 서버측에 저장하여 요청을 보낸 클라이언트를 식별하는 방법을 사용한다. 이 때 서버측에 저장하는 데이터를 세션이라고도 한다.PHP에서도 다른 웹 프로그래밍 언어와 같이 세션을 이용하기 위한 기능을 제공한다. xxxxxxxxxx# session_test.php​# $_SESSION을 사용하기위해서는..
[PHP] require VS include PHP에서는 파일을 포함시키는 require와 include 두 가지 키워드가 존재한다. 이 두 가지를 번갈아 가면서 써도 큰 차이를 느낄 수 없다. 언제 require를 사용해야하고, 언제 include를 사용해야 할까?먼저 예제 코드를 작성해 봤다.xxxxxxxxxx# index.php
[PHP] psr4 PHP5에 오토로딩 기능이 추가되었지만 라이브러리를 오토로딩하려면 직접 spl_autoload_register 메소드를 호출하여 일일이 등록해야 한다. 외부 라이브러리를 사용할 경우 일일이 이를 등록하는 것은 만만한 작업이 아니다.PSR-4 는 PSR-0 을 대체하는 새로운 오토로딩 표준으로 다음과 같이 정규화된 클래스 이름(FQCN; Fully Qualified Class Name) 을 규정하고 있으며 이를 준수하여 패키지를 개발할 경우 패캐지 관리자인 컴포저를 통해 손쉽게 의존성 있는 모든 패키지를 로딩할 수 있다.xxxxxxxxxx\(\)*\ 실습테스트하려는 프로젝트 구조는 다음과 같다proj├── composer.json├── index.php└── src └── lib └── Worker.php..
[PHP] composer 설치 윈도우에 composer 설치하는 법1. php 설치링크에서 PHP의 윈도우 버전 설치압축 해제 후 파일을 C:/php7/에 옮긴다.그리고 php.ini-production 파일을 열어 extension_dir를 찾아 아래처럼 수정한다.; extension_dir = "C:/php7/ext"cmd창에서 설치확인​xphp -v 2. composer 설치공식 홈페이지에서 다운로드 설치파일을 실행하여 설치설치확인xxxxxxxxxxcomposer help
[PHP] autoload 클래스를 사용하기 위해서는 객체를 생성하여 해당 메서드를 호출해 줘야한다. 다음과 같이 특정 작업을 수행하는 클래스가 있다고 가정하자. // index.php
[PHP] 웹 프로그래밍 웹사전적 의미 그대로 웹은 망, 그물의 형태를 띠고 있는 네트워크이다. 웹 서비스는 클라이이언트-서버 모델을 기본으로 작동하고 있다. 클라이언트는 네트워크에서 정보를 요구하는 쪽을 의미하고, 서버는 요구받은 정보를 제공하는 쪽의 컴퓨터를 의미한다. 예를 들면 우리가 사용하는 웹 브라우저가 클라이언트이며 정보를 제공하고 있는 웹 사이트의 시스템은 서버가 되는 것이다. 웹이 동작되는 주요 요소로 웹 브라우저, 웹 서버가 있다. 일반적으로 사용하는 대표적인 브라우저가 크롬, 익스플로어이다. 웹의 동작은 클라이언트와 서버가 요청과 응답을 주고 받으며 진행된다. 클라이언트에서 서버로 정보를 요구하기 위해 보내는 메시지가 요청(request)이며, 요청을 받은 서버는 요구된 메시지에 대해 HTML이나 이미지 등의 ..
[PHP] PDO 데이터베이스는 웹 어플리케이션 개발에 절대 빠지지 않는 기능이다. php 역시 데이터베이스를 위한 추상화 계층인 PDO를 제공하며 이를 통해 데이터베이스를 간편히 사용할 수 있다. PDO는 php의 내장 기능이며 php프로그램과 데이터베이스 사이의 통신을 단순화하는 역할을 한다. 실습은 다음과 같은 환경에서 진행했다. php 7 MySQL 5.71. 테스트 테이블 생성 MySQL에 실습을 위한 새로운 스키마를 만들고 테이블을 생성했다. ` CREATE SCHEMA `test_sch` DEFAULT CHARACTER SET utf8 ; /* test용 테이블 */ CREATE TABLE `world_of_renaissance`.`test_table` ( `id` INT NOT NULL AUTO_INCREM..
[PHP] phpstorm code sniffer 설정 윈도우 phpstorm에 코드 검사기인 mess detector와 codesniffer를 연동하여 코딩 컨벤션 및 PSR-2 형식를 검사할 수 있다. 1. php 설치 링크에서 PHP의 윈도우 버전 설치 압축 해제 후 파일을 C:/php7/에 옮긴다. 그리고 php.ini-production 파일을 열어 extension_dir를 찾아 아래처럼 수정한다. ; extension_dir = "C:/php7/ext"설치확인 php -v2. composer 설치 공식 홈페이지에서 다운로드 설치확인 composer help3. 설치 mess detector 설정 composer global require squizlabs/php_codesniffer phpmd/phpmd설치를 시작하면 아래처럼 첫 줄에 어느 경로..