PHP에서 두 날짜를 비교하는 작업은 의외로 간단합니다. 특히 "YYYY-MM-DD"처럼 표준화된 형식의 날짜 문자열은 사전순(lexicographic) 비교 결과가 실제 시간 순서와 일치하기 때문에, 별도의 변환 과정 없이 기본 비교 연산자만으로도 정확하게 비교할 수 있습니다. 아래 예제들을 통해 동등 연산자(==)와 부등호 연산자를 활용한 날짜 비교 방법을 살펴보겠습니다. 예제 1: 동등 연산자로 두 날짜가 같은지 확인하기 다음 코드는 동등 연산자를 사용하여 두 날짜가 서로 같은지 판단합니다. <?php&
PHP에는 논리곱(AND)을 수행하는 두 가지 연산자, 즉 and와 &&가 존재합니다. 두 연산자 모두 같은 기능을 하지만, 결정적인 차이는 연산자 우선순위(operator precedence)에 있습니다.&& 연산자의 우선순위가 대입 연산자 =보다 높은 반면, and 연산자의 우선순위는 =보다 낮습니다. 이러한 우선순위 차이 때문에 동일해 보이는 코드도 결과가 달라질 수 있습니다.예제 1: and 연산자 사용먼저 and 연산자를 사용한 기본적인 예제를 살펴보겠습니다.<?php &nbs
PHP에서 두 개의 부동 소수점(float) 값을 비교하는 것은 겉보기에는 간단해 보이지만, 실제로는 몇 가지 주의할 점이 있습니다. 이 글에서는 기본적인 비교 연산자 사용법과 함께, 소수점 자릿수를 고려한 정확한 비교 방법까지 예제와 함께 살펴보겠습니다.기본적인 부동 소수점 값 비교가장 일반적인 방법은 == 비교 연산자를 사용하는 것입니다. 다음 예제를 확인해 보세요.예제 1<?php $a = 2.5; $b = 3.5; echo $a; echo \n$b; if($a == $b) {
PHP에서 두 개의 문자열을 하나로 합치는 작업을 문자열 연결(concatenation)이라고 합니다. 가장 일반적인 방법은 점(.) 연산자를 사용하는 것으로, 연결하고자 하는 문자열이나 변수 사이에 점을 넣어주기만 하면 됩니다.아래 예제를 통해 실제 사용 방법을 확인해 보겠습니다.예제 1: 숫자 값 비교와 함께 살펴보기<?php $a = 1.967; $b = 1.969; $res = $a."
PHP에서 배열에 담긴 여러 값 중 하나를 무작위로 뽑아야 하는 경우가 종종 있습니다. 이럴 때는 내장 함수인 array_rand()를 사용하면 간단하게 해결할 수 있습니다. 이 함수는 배열에서 무작위 키(key)를 반환하며, 반환된 키로 배열 요소에 접근하면 원하는 무작위 값을 얻을 수 있습니다.예제 1: 배열에서 무작위 값 하나 가져오기다음은 PHP 배열에서 무작위 값을 하나 추출하는 코드입니다.<?php $arr = array( "p"=>"150", "
PHP에서 배열의 첫 번째 요소를 가져오는 대표적인 방법은 두 가지입니다. 키(인덱스)로 직접 접근하는 방법과 reset() 함수를 활용하는 방법입니다. 각각의 예제와 출력 결과를 통해 자세히 살펴보겠습니다. 방법 1: 키(인덱스)로 직접 접근하기 첫 번째 요소의 키를 미리 알고 있는 경우라면, 해당 키를 지정하여 간단하게 값을 가져올 수 있습니다. 가장 직관적이고 빠른 방식입니다. 예제 <?php $arr = array( p=>150, q=>100, r=>120,
PHP에서 주(週)의 첫 번째 날짜를 구하려면 date() 함수와 strtotime() 함수를 함께 사용하면 됩니다. 아래 예제를 통해 자세히 살펴보겠습니다.예제 1: 이번 주의 첫 번째 날 구하기<?php $res = date(l - d/m/Y, strtotime(this week)); echo First day = , $res;?>출력 결과First day = Monday - 09/12/2019strtotime(this week)는 현재
PHP에서 문자열을 부울(Boolean) 값으로 변환할 때 가장 안전하고 권장되는 방법은 filter_var() 함수에 FILTER_VALIDATE_BOOLEAN 필터를 함께 사용하는 것입니다. 이 필터는 1, true, on, yes와 같은 문자열은 true로, 0, false, off, no, (빈 문자열)과 같은 값은 false로 반환합니다.단순히 (bool) 캐스팅을 사용하면 false라는 문자열조차 true로 평가되는 문제가 있기 때문에, 문자열 해석이 필요한 경우에는 filter_var()를 사용하는 것이 훨씬 정확합니다
PHP로 개발하다 보면 특정 날짜에 며칠을 더해야 하는 경우가 자주 발생합니다. 예를 들어, 만료일 계산이나 예약 시스템에서 마감일을 구할 때 유용하게 사용됩니다. 이 글에서는 PHP에서 $date 변수에 일수를 추가하는 대표적인 두 가지 방법을 소개합니다.방법 1: strtotime() 함수 활용하기strtotime() 함수는 사람이 읽기 쉬운 날짜 문자열을 Unix 타임스탬프로 변환해 줍니다. 문자열에 + N days 형태로 기간을 붙여주면 손쉽게 원하는 날짜를 계산할 수 있습니다.예제 코드<?php
PHP에서 문자열 안에 특정 부분 문자열(하위 문자열)이 포함되어 있는지 확인하려면 strpos() 함수를 사용할 수 있습니다. 이 함수는 부분 문자열이 처음 나타나는 위치(인덱스)를 반환하고, 찾지 못하면 false를 반환합니다.예제 1: 부분 문자열이 존재하는 경우<?php $subStr = Mother; $str = How I Met Your Mother; echo String = $str; &
연관 배열(Associative Array)은 인덱스를 숫자 대신 문자열로 사용하는 배열입니다. 덕분에 키(key)와 값(value) 사이에 의미 있는 연결을 만들 수 있어, 데이터를 이름 기반으로 직관적으로 다룰 수 있습니다.일반 배열이 0, 1, 2 같은 숫자 인덱스에 값을 저장한다면, 연관 배열은 jack, tom처럼 사람이 읽기 쉬운 이름을 키로 지정합니다.연관 배열의 기본 구조다음은 키와 값이 쌍(pair)으로 이루어진 연관 배열의 예시입니다.$arr = array( p=>150, q=>100, r=>120
PHP에서 날짜 배열 정렬하기PHP에서 날짜 문자열로 구성된 배열을 정렬하려면 usort() 함수와 strtotime() 함수를 함께 활용하면 됩니다. usort()는 개발자가 직접 정의한 비교 함수를 기준으로 배열을 정렬해 주며, strtotime()은 YYYY-MM-DD 형식의 날짜 문자열을 유닉스 타임스탬프(정수)로 변환해 주기 때문에 숫자 비교 방식으로 날짜의 선후 관계를 쉽게 판단할 수 있습니다.예제 1: 날짜 오름차순 정렬 (오래된 날짜 → 최근 날짜)<?php function compareDates($date
다차원 배열(Multidimensional Array)이란 하나 이상의 배열을 요소로 포함하는 배열을 말합니다. 메인 배열의 각 요소가 배열일 수 있고, 그 하위 배열의 각 요소 역시 또 다른 배열일 수 있으며, 이러한 구조는 원하는 만큼 계속 중첩될 수 있습니다. 다차원 배열에 저장된 값은 여러 개의 인덱스를 사용하여 접근합니다.다차원 배열의 기본 구조PHP에서 다차원 배열은 주로 연관 배열(키-값 형태) 또는 숫자 인덱스 배열을 중첩하는 방식으로 만듭니다. 예를 들어 학생별 과목 점수를 저장할 때, 학생 이름을 키로 하고 그 값
PHP로 개발하다 보면 사용자 입력이나 외부 데이터를 받아올 때 문자열 앞뒤에 불필요한 공백(whitespace)이 포함되는 경우가 많습니다. 이런 공백은 데이터 비교나 저장 시 문제를 일으킬 수 있기 때문에 반드시 정리해 주는 것이 좋습니다.배열에 담긴 모든 문자열을 한 번에 자르려면(trim) array_map() 또는 array_walk() 함수와 trim을 함께 사용하면 됩니다. 아래에서 두 가지 방법을 예제와 함께 살펴보겠습니다.방법 1. array_map()과 trim() 사용하기array_map()은 콜백 함수를 배열의
PHP에서 배열의 키(key)를 새로 지정하는 작업, 즉 재인덱싱(re-indexing)은 기존 배열의 인덱스를 원하는 범위나 형식으로 바꾸고 싶을 때 유용하게 사용됩니다. 이 작업에는 주로 array_combine(), range(), array_values() 세 가지 함수를 함께 활용합니다.동작 원리는 간단합니다. array_values()로 배열의 값만 추출하고, range()로 새로운 키 목록을 생성한 뒤, array_combine()이 이 둘을 하나의 배열로 합쳐 줍니다.예제 1: 숫자 키로 재인덱싱하기먼저 숫자 인덱스를
PHP에서 변수 이름을 문자열 형태로 가져오고 싶다면 가변 변수(Variable Variables) 또는 $GLOBALS 배열을 활용할 수 있습니다. 아래 예제를 통해 두 가지 방법을 자세히 살펴보겠습니다.예제 1: 가변 변수($$) 사용하기PHP의 가변 변수 문법인 이중 달러 기호($$)를 사용하면 문자열 값을 변수 이름처럼 다룰 수 있습니다.<?php $a = This is it!; $$a = Demo string!; print
PHP에서 배열의 요소들을 쉼표로 구분된 목록(문자열)으로 변환하려면 implode() 함수를 사용하면 됩니다. 이 함수는 배열의 모든 요소를 지정한 구분자로 연결하여 하나의 문자열로 반환합니다. 아래 예제를 통해 자세히 살펴보겠습니다.예제 1: 공백 제거와 함께 쉼표로 구분된 목록 만들기다음은 앞뒤 공백이 포함된 문자열 배열을 처리하고, 쉼표로 구분된 목록을 생성한 뒤, array_map() 함수로 각 요소의 공백을 제거하는 예제입니다.<?php $arr = array( John ,
PHP에서 숫자를 월 이름으로 변환하는 방법PHP에서 월을 나타내는 숫자를 월 이름으로 변환하려면 date() 함수와 mktime() 함수를 조합하거나, DateTime::createFromFormat() 메서드를 활용할 수 있습니다. 아래에서 두 가지 방법을 예제와 함께 살펴보겠습니다.예제 1: date()와 mktime() 함수 사용하기<?php $date = "2019-11-11"; echo "Displaying
PHP에서는 문자열을 숫자로 손쉽게 변환할 수 있습니다. 대표적인 방법으로는 타입 캐스팅(type casting)과 전용 변환 함수를 사용하는 방식이 있으며, 상황에 맞게 선택하여 활용하면 됩니다.정수(int) 타입 캐스팅 예제문자열 앞에 (int)를 붙여주면 해당 문자열을 정수형으로 간단히 변환할 수 있습니다. 코드는 다음과 같습니다.<?php $str = 150; $num = (int)$str; ech
PHP 이중 부정(!!) 연산자란? PHP에서 이중 부정(Double Not) 연산자는 NOT 연산자(!)를 두 번 연달아 사용하는 표기법입니다. 동작 원리는 간단합니다. 첫 번째 !가 값을 반전시켜 불리언(Boolean)으로 변환하고, 두 번째 !가 다시 한 번 반전시켜 최종적으로 해당 값의 진리값(truthiness)에 해당하는 순수한 불리언 결과를 반환합니다. 쉽게 말해, 어떤 값이 참으로 평가되는 값이면 true를, 거짓으로 평가되는 값이면 false를 얻게 되는 것입니다. 이는 값을 명시적인 불리언 타입으로 캐스팅하는 데