IMG-LOGO
공지사항 :

PHP 숫자와 문자

lmkfox - 2025-07-24 06:43:28 13 Views 0 Comment

1. 숫자 (Numbers)

PHP에서는 숫자를 크게 **정수(integer)**와 부동소수(float, double) 두 가지로 구분합니다.

1.1 정수 (Integer)

  • 소수점 없는 숫자

  • 10진수, 8진수(0으로 시작), 16진수(0x로 시작), 2진수(0b로 시작) 모두 사용 가능

$number = 42;        // 10진수
$octal = 0755;       // 8진수
$hex = 0xFF;         // 16진수
$binary = 0b1010;    // 2진수

1.2 부동소수 (Float, Double)

  • 소수점이 있는 숫자

  • 과학적 표기법도 가능 (e.g., 1.2e3)

$price = 19.95;
$distance = 1.2e3; // 1200

1.3 숫자 연산자

연산자

설명

예시

+

덧셈

$a + $b

-

뺄셈

$a - $b

*

곱셈

$a * $b

/

나눗셈

$a / $b

%

나머지

$a % $b

**

거듭제곱 (PHP 5.6+)

$a ** $b


2. 문자 (Strings)

PHP에서 문자열은 작은 따옴표(’ ’) 또는 큰 따옴표(” “)를 사용해 표현합니다.

$name = "Alice";
$message = 'Hello, world';

2.1 큰따옴표 vs 작은따옴표

  • **큰따옴표(” “)**는 변수나 이스케이프 시퀀스(\n, \t 등)를 해석

  • **작은따옴표(’ ’)**는 문자 그대로 출력

$name = "Bob";

echo "Hello, $name"; // Hello, Bob
echo 'Hello, $name'; // Hello, $name

2.2 문자열 연결

  • . (점) 연산자를 사용

$first = "Hello";
$second = "World";
echo $first . " " . $second; // Hello World

2.3 문자열 함수 예시

함수

설명

strlen()

문자열 길이 반환

strtoupper()

대문자 변환

strtolower()

소문자 변환

substr()

문자열의 일부 추출

strpos()

특정 문자열 위치 반환 (없으면 false)

str_replace()

문자열 치환

$name = "Charlie";
echo strlen($name); // 7
echo strtoupper($name); // CHARLIE


3. 숫자와 문자열 혼용

PHP는 동적 타이핑 언어로, **자동 형변환(type juggling)**이 발생합니다.

$number = 100;
$string = "50";

$sum = $number + $string; // 150

  • 문자열 "50"은 숫자로 변환되어 더해짐

  • 문자열이 숫자로 변환 불가능한 경우 0 처리

$result = "abc" + 10; // 결과는 10 (abc는 숫자 변환 실패 → 0 처리)

주의 사항

  • 숫자가 아닌 문자열과 연산 시 오류 또는 논리 오류 발생 가능

  • 의도하지 않은 자동 변환을 방지하려면 is_numeric(), intval(), floatval() 등을 사용

if (is_numeric($value)) {
    $num = intval($value);
}


4. 형변환 명시적 사용 (Casting)

$var = "123";
$intVal = (int)$var;
$floatVal = (float)"12.34";


5. 숫자 → 문자열 자동 변환

숫자를 문자열로 자동 변환하는 경우도 있음

$num = 100;
$str = "The number is " . $num; // 자동으로 문자열 변환


6. 변수 타입 확인 함수

함수

설명

gettype()

변수의 타입을 문자열로 반환

is_int()

정수 여부 확인

is_string()

문자열 여부 확인

is_numeric()

숫자 형태 여부 확인


요약

항목

설명

정수

소수점 없는 숫자

부동소수

소수점 포함 숫자 또는 과학적 표기법 사용 가능

문자열

작은/큰따옴표로 표현, 변수 파싱은 큰따옴표에서만

자동 형변환

숫자와 문자열이 섞이면 PHP가 자동으로 형변환

형변환 함수

intval(), floatval(), strval() 등 사용 가능


댓글