특정 문자열 제거 - PHP로 특정 문자 자르기 (php로 문자 일부 제거) > 웹제작/운영

사이트 내 전체검색
[멀티검색] 먼저 왼쪽 검색창에 검색어를 입력하세요.
  • 네이버
  • 다음
  • 구글
  • 유튜브
  • 랜덤Go
[멀티검색] 먼저 왼쪽 검색창에 검색어를 입력하세요.
  • 네이버
  • 다음
  • 구글
  • 유튜브
  • 랜덤Go

웹제작/운영

PHP 특정 문자열 제거 - PHP로 특정 문자 자르기 (php로 문자 일부 제거)

페이지 정보

profile_image
작성자 키스세븐
조회 1,109회 작성일 22-06-06 01:25

본문

특정 문자열 제거

PHP로 특정 문자 자르기


애초에 하나의 문장으로 되어 있는 문자열에서 일부분만 남겨야 할 때가 있다.

이렇듯 PHP로 특정 문자열제거하고 자르기할 때 사용하는 방법으로 str_replace를 사용한다. 

str_replace를 통해서 문자열 자르기(추출)를 하는 방법을 설명한다.



특정 문자열 제거 - PHP로 특정 문자 자르기 (php로 문자 일부 제거)



특수 문자열만 남겨야 하는 예


유튜브의 주소 중 고유 ID만 가져와야 할 경우를 예로 들어서 설명하겠다.


유튜브의 동영상 URL주소는 "http://유튜브 주소/고유 ID"로 구성되어 있다. (아래 예)

https://youtu.be/uOniyAjLvDo


그런데 여기서 uOniyAjLvDo만 필요할 수도 있다. 즉, https://youtu.be/를 잘라내야 하는 것이다. 


이럴 때 사용하는 것이 str_replace다. str_replace의 사용 방법은 아래의 예제 코드 소스를 통해 알 수 있을 것이다.

[code]

str_replace('바뀔문자', '바꾸는문자', '대상문자');

[/code]



PHP로 특정 문자 자르기 예제 코드 소스


그럼, 실제로 유튜브 주소 중 일부를 잘라내는 예제를 통해서 사용 방법을 이해해 보자.


순서는 이렇다. 

  1. 문자열을 지운 후 변수에 저장하기
  2. 저장된 문자열을 불러서 활용하기


그 중에서 1번을 먼저 해 보자.

https://youtu.be/uOniyAjLvDo 중에서 https://youtu.be/ 부분만 날려버리는 코드는 아래와 같다.

[code]

<?php

   $urlstrcut = str_replace('https://youtu.be/', '', 'https://youtu.be/uOniyAjLvDo');

?>

[/code]

 

괄호 안을 잘 보면 외따옴표가 3개가 있는 것을 볼 수 있다. (그래서 쉼표가 2개다)

이 예제에서는 중간의 외따옴표가 비어 있는데, 제거가 목적이기 때문에 그렇다. 

바꿔서 다른 문자를 넣고 싶다면 중간의 외따옴표에 내용을 적으면 된다.


위의 php 특정 문자열 제거 작업을 하고 나면 "uOniyAjLvDo"만 남게 된다.

$의 변수 이름은 아무거나 적어도 된다. 단, 아래의 불러오기 설명에서 같은 이름을 사용해야 한다.



특정 문자열 PHP로 제거하기


이제는 2번의 저장된 문자열 활용 부분의 예를 들겠다.

유튜브의 동영상 URL 주소를 이용해서 대표 이미지(썸네일)만 뽑아 오는 것이다.


위에서 사용한 변수 이름을 같게 해서 아래처럼 저장해 보자.

[code]

<img src="https://img.youtube.com/vi/<?php echo $urlstrcut; ?>/maxresdefault.jpg"

[/code]


이렇게 하면 유튜브 썸네일을 따로 저장하지 않아도 이미지를 링크로 불러서 사용할 수 있게 된다. [저작권법 표시] 원본 출처 : 키스세븐(www.kiss7.kr)


만약 이미지가 너무 크다면 마지막 부분을 sddefault.jpg 같은 것으로 바꾸면 된다. 

이에 관련된 설명은 아래 링크 글에서 자세히 읽을 수 있으니, 옮겨가서 공부해 보면 좋을 것이다.

추천0
총 8개 (1Page)
  • RSS

검색


    허브사이트 "키스세븐"
    [허브사이트란?]
    수많은 사이트와 포털을
    한 번에 모아서
    사용할 수 있는 서비스를 말합니다.