[PHP] #19 PHP 문자열 함수, 문자열 수정 및 대체 str_replace부터 정규식까지 총정리

2025. 8. 8. 16:00·Programming/PHP
반응형

 

 

안녕하세요, 토스트데브입니다!
이번 글에서는 PHP로 문자열을 다룰 때 수정하거나 바꾸는 작업, 즉 "치환"과 "교체"를 수행하는 데 사용하는 유용한 함수들을 정리해보겠습니다.

 

 

✅ 1. str_replace() – 문자열 간단 대체

$str = "I like JavaScript.";
echo str_replace("JavaScript", "PHP", $str);  
// 출력: I like PHP.
  • 첫 번째 인자: 바꿀 문자열
  • 두 번째 인자: 새 문자열
  • 세 번째 인자: 원본 문자열

🔁 배열 형태로 여러 개 치환도 가능!

$text = "빨강, 파랑, 초록";
echo str_replace(["빨강", "초록"], ["RED", "GREEN"], $text);
// 출력: RED, 파랑, GREEN

 

 

✅ 2. substr_replace() – 특정 위치의 문자열 변경

$str = "toastdev";
echo substr_replace($str, "PHP", 0, 5);  
// 출력: PHPdev

 

  • 인자: (원본문자열, 대체문자열, 시작위치, 치환길이)
  • 문자열 일부만 바꾸고 싶을 때 유용

 

 

✅ 3. strtr() – 문자 또는 문자열 단위로 매핑 대체

$str = "hello world";
echo strtr($str, "eo", "30");  
// 출력: h3ll0 w0rld

 

 

  • 문자 단위로 매핑 가능: e → 3, o → 0
  • 연관 배열로도 사용 가능:
$str = "바나나, 사과, 포도";
echo strtr($str, ["바나나" => "banana", "포도" => "grape"]);
// 출력: banana, 사과, grape

 

 

 

✅ 4. preg_replace() – 정규표현식 기반 문자열 치환

$str = "전화번호: 010-1234-5678";
echo preg_replace("/[0-9]{3}-[0-9]{4}-[0-9]{4}/", "***-****-****", $str);
// 출력: 전화번호: ***-****-****

 

  • 복잡한 패턴을 찾아서 대체 가능
  • 이메일, 전화번호, 주민번호 마스킹 등 실전 예제에 강력

 

 

✅ 함수별 요약 비교

함수 설명 특징
str_replace() 문자열 단순 치환 가장 기본적, 빠름
substr_replace() 문자열의 일부를 위치 지정해 치환 시작 위치/길이 지정 가능
strtr() 문자 또는 문자열 매핑 빠르고 직관적
preg_replace() 정규표현식으로 치환 복잡한 패턴 처리 가능

 

 

 

✅ 실전 예제: 이메일 마스킹

$email = "user@example.com";
$masked = preg_replace("/(.*)@/", "****@", $email);

echo $masked;  // 출력: ****@example.com

 

 

🔒 보안 팁

 

  • 사용자 입력값 치환 시 XSS 방지를 위한 htmlspecialchars()와 병행 사용 권장
  • 패턴 대체 작업 시 정규식 오용에 주의

 

 

✨ 마무리

문자열을 다루는 데 있어 “수정과 치환”은 정말 자주 등장하는 작업입니다.
단순한 문구 교체부터, 마스킹이나 필터링까지 다양한 함수 조합으로 데이터를 깔끔하게 정제해보세요!

 

 

#PHP문자열 #str_replace #substr_replace #preg_replace #문자열치환 #문자열수정 #정규식치환 #PHP기초 #문자열함수 #코딩입문 #toastdev

 

반응형
저작자표시 비영리 (새창열림)

'Programming > PHP' 카테고리의 다른 글

[PHP] #21 PHP 문자열 함수, 문자열 암호화 및 해싱 password_hash부터 md5까지  (1) 2025.08.10
[PHP] #20 PHP 문자열 함수, 문자열 정리 및 필터링 함수 총정리 trim부터 htmlspecialchars까지  (2) 2025.08.09
[PHP] #18 PHP 문자열 함수, 한글도 정확하게! 문자열 추출 및 분할 함수 정리  (3) 2025.08.07
[PHP] #17 PHP 문자열 함수, 대소문자 및 첫 글자 변환 함수 간단 정리  (2) 2025.08.06
[PHP] #16 PHP 문자열 함수, 문자열 길이 및 정보 확인 함수 총정리!  (1) 2025.08.05
'Programming/PHP' 카테고리의 다른 글
  • [PHP] #21 PHP 문자열 함수, 문자열 암호화 및 해싱 password_hash부터 md5까지
  • [PHP] #20 PHP 문자열 함수, 문자열 정리 및 필터링 함수 총정리 trim부터 htmlspecialchars까지
  • [PHP] #18 PHP 문자열 함수, 한글도 정확하게! 문자열 추출 및 분할 함수 정리
  • [PHP] #17 PHP 문자열 함수, 대소문자 및 첫 글자 변환 함수 간단 정리
TOASTDEV
TOASTDEV
인스턴트 코딩 #토스트데브 #토스트뎁 #코딩공부 #개발입문
  • TOASTDEV
    토스트뎁
    TOASTDEV
    • 분류 전체보기 (87) N
      • 알쓸신잡 (32) N
        • 코딩에 대하여 (13)
        • 컴퓨터에 대하여 (10) N
        • IT 국내외 소식 (9)
      • Web Front (6)
        • HTML (6)
        • CSS (0)
        • JavaScript (0)
      • Programming (21) N
        • PHP (21) N
      • Database (12)
        • SQL (12)
        • MySQL (0)
      • Server (16) N
        • Linux (16) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Youtube Toastdev
    • Naver Blog
  • 공지사항

    • [유튜브] 유튜브 영상 업로드 안내
  • 인기 글

  • 태그

    웹개발
    HTML
    데이터베이스
    코딩입문
    웹개발기초
    PHP문자열
    코딩기초
    php기초
    IT상식
    php코딩
    서버관리
    프론트엔드
    웹개발입문
    php입문
    php문법
    php
    html기초
    sql
    데이터분석
    SQL기초
    SQL강의
    ict
    컴퓨터기초
    ubuntu서버
    SQL문법
    코딩공부
    리눅스기초
    웹프로그래밍
    ubuntuserver
    서버입문
  • 최근 댓글

  • 최근 글

  • 전체
    오늘
    어제
  • 반응형
  • hELLO· Designed By정상우.v4.10.3
TOASTDEV
[PHP] #19 PHP 문자열 함수, 문자열 수정 및 대체 str_replace부터 정규식까지 총정리
상단으로

티스토리툴바