분류 전체보기227 PHP 세션 PHP 세션 정리세션(Session)이란? 세션(Session)은 사용자의 상태 정보를 서버 측에 저장하는 방식입니다. 예를 들어 로그인 정보, 장바구니 내역, 사용자 설정값 등이 세션을 통해 유지됩니다. PHP에서는 기본적으로 `$_SESSION` 전역 배열을 통해 세션 값을 저장하고 불러올 수 있습니다. PHP의 기본 세션 저장 방식PHP는 기본적으로 세션 데이터를 파일에 저장합니다. 세션이 시작되면 고유한 세션 ID가 발급되고, 사용자의 브라우저에는 PHPSESSID 쿠키로 전달됩니다. 이 ID를 기반으로 서버는 임시 폴더(예: /tmp)에 sess_{세션ID} 형태의 파일을 생성하여 데이터를 보관합니다.기본 세션 설정은 다음과 같이 확인할 수 있습니다.ini_get('session.save_han.. 2025. 7. 24. PHP 설치부터 실행까지 PHP 설치부터 실행까지PHP 개발 환경 구성하기로컬 서버 vs 웹 호스팅PHP를 실행하려면 웹 서버 환경이 필요합니다. 이를 구성하는 방법은 크게 두 가지가 있습니다. 로컬 서버는 내 컴퓨터에 직접 서버 환경을 구성하여 테스트하는 방식이며, 웹 호스팅은 외부에 구성된 서버를 사용하는 방식입니다.처음 PHP를 배우신다면 로컬 서버에서 연습하시는 것이 설정을 자유롭게 변경할 수 있어 훨씬 유리합니다. 운영체제별 환경 구성 방법Windows에서는 XAMPP, WAMP 같은 패키지를 설치하면 Apache와 PHP를 한 번에 구성할 수 있습니다.물론 단독 설치로도 가능합니다.macOS에서는 MAMP를 추천드리며, Homebrew로도 설치가 가능합니다.Linux의 경우에는 배포판에 따라 apt 또는 yum 등을 .. 2025. 7. 22. [프로그래머스] 특정 세대의 대장균 찾기 (MySQL) 코딩테스트 연습 - 특정 세대의 대장균 찾기링크 : https://school.programmers.co.kr/learn/courses/30/lessons/301650 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명대장균이 분화하며 자식 대장균을 생성하는데 3세대 대장균을 구하는 문제이다.문제 풀이생각 과정1. 직관적으로 서브쿼리를 사용해서 구할 수 있다고 생각했고2. JOIN문으로 다시 한번 쿼리를 작성해봤다.3. 아무리 생각해도 LEVEL4의 난이도가 아닌거 같아 다른 풀이를 보니 재귀를 사용한 방법이 있어서 공부해봤다.구현1. 서브쿼리SELECT ID FROM ECOLI_DATA WHERE PAR.. 2025. 7. 21. PHP 개요 PHP, 여전히 사랑받는 서버 사이드 스크립트 언어1. PHP란?PHP는 “PHP: Hypertext Preprocessor”의 재귀적 약자로, 서버 사이드에서 작동하는 오픈 소스 스크립트 언어입니다. 웹 페이지를 동적으로 생성할 수 있도록 설계되었으며, HTML 내에 직접 PHP 코드를 삽입할 수 있는 특징을 가지고 있습니다.2. PHP의 역사PHP는 1994년, 라스무스 러도프(Rasmus Lerdorf)가 개인 홈페이지 관리를 위해 개발한 CGI 프로그램에서 시작되었습니다. 이후 1995년에 공식적으로 PHP 1.0이 공개되었고, 1997년에는 PHP 3.0이 나오며 대중적인 관심을 끌기 시작했습니다. 현재는 PHP 8.x 버전까지 발전했으며, 성능 향상과 문법 개선이 꾸준히 이루어지고 있습니다.3.. 2025. 7. 20. PHP 공부 시작 PHP언어로 개발을 시작한지 2년이 다되어가는데업무에 치이다보니 PHP에 대해서 정확히 알아간다거나 전문성이 생기는 느낌이 아니고단순히 일을 하기위해 반복적인 작업들만 하는 느낌이 들었다.또 요즘은 AI나 웹상에 정보들이 많기 때문에 그저 복사 붙여넣기만 반복하는 내 모습을 보며나는 개발자인가 복사붙여넣기하는 기계인가라는 생각이 문득 들었다. 이제부터 PHP를 시작으로 블로그에 관련 글을 작성하며공부를 하고 개발자로서 지식을 쌓아나갈 것이다.아자아자! 2025. 7. 20. [프로그래머스] 대장균의 크기에 따라 분류하기 2 (MySQL) 코딩테스트 연습 - 대장균의 크기에 따라 분류하기 2링크 : https://school.programmers.co.kr/learn/courses/30/lessons/301649 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명대장균들의 크기에 따라서 4가지 단계로 그룹을 매겨서 해당하는 단계를 출력하면된다.문제 풀이이문제를 풀려면 순위를 매기는 함수를 알아야 편해서 이번 기회에 공부했다. NTILENTILE 함수는 숫자를 입력하면 해당 숫자만큼 단계를 나눠서 구분해준다.예를 들어서 4를 입력하면 25%씩 나눠서 구분해준다.SELECT ID,CASE WHEN NTILE(1) OVER (order .. 2024. 11. 28. [프로그래머스] 연도별 대장균 크기의 편차 구하기 (MySQL) 코딩테스트 연습 - 연도별 대장균 크기의 편차 구하기링크 : https://school.programmers.co.kr/learn/courses/30/lessons/299310 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명다음과 같이 대장균의 정보가 주어진다. 1. 연도별로 가장 SIZE_OF_COLONY가 큰 값을 구한다. =>MAX_SIZE라고 지칭2. 각 대장균마다 해당되는 MAX_SIZE에서 자신의 SIZE_OF_COLONY를 빼서 YEAR_DEV라고 지칭한다.3. YEAR_DEV 오름차순정렬, ID 오름차순 정렬 문제 풀이생각 과정우선 연도별 가장 큰 대장균의 크기부터 구했다.-- .. 2024. 11. 26. [프로그래머스] 분기별 분화된 대장균의 개체 수 구하기 (MySQL) 코딩테스트 연습 - 분기별 분화된 대장균의 개체 수 구하기링크 : https://school.programmers.co.kr/learn/courses/30/lessons/299308 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명위와같은 테이블이 있을 때 날짜를 분기에 맞게 나눠서 집계하는 문제다 .이처럼 만들면 성공문제 풀이구현 1 - DATE_FORMAT 사용SELECT CASE WHEN DATE_FORMAT(DIFFERENTIATION_DATE,'%m%d')처음엔 월, 일만 뽑아와서 날짜형식으로 비교하는 방법을 사용했다. 구현 2 - MONTH 사용SELECT CASE WHEN M.. 2024. 11. 25. [프로그래머스] 자동차 대여 기록 별 대여 금액 구하기 (MySQL) 코딩테스트 연습 - 자동차 대여 기록 별 대여 금액 구하기링크 : https://school.programmers.co.kr/learn/courses/30/lessons/151141 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명 CAR_RENTAL_COMPANY_CAR 자동차 종류, 대여비용 테이블 CAR_RENTAL_COMPANY_RENTAL_HISTORY 자동차 대여 기록 테이블 CAR_RENTAL_COMPANY_DISCOUNT_PLAN 할인정보 테이블이 있다. 트럭을 대여한 기록을 구하여 할인을 적용하고 대여기간에 대한 비용을 구하면 된다.eg. ) HISTORY_ID 5번을 보면 CA.. 2024. 11. 24. 이전 1 2 3 4 ··· 26 다음