라이브러리

[PHP] fnmatch - 파일 이름을 패턴과 일치시킵니다




PHP의 fnmatch 함수

PHP의 `fnmatch` 함수는 Unix shell의 `fnmatch` 함수를 구현한 함수입니다. 이 함수는 패턴 매칭을 위한 기능을 제공하며, 파일 이름이나 디렉토리 이름과 같은 문자열을 패턴으로 비교할 수 있습니다.

fnmatch 함수의 사용법

`fnmatch` 함수의 사용법은 다음과 같습니다.

#hostingforum.kr
php

fnmatch(pattern, string)



- `pattern` : 비교할 패턴 문자열
- `string` : 패턴과 비교할 문자열

fnmatch 함수의 예제

1. 기본적인 패턴 매칭

#hostingforum.kr
php

$pattern = '*abc*';

$string = 'abc123def';



if (fnmatch($pattern, $string)) {

    echo "패턴이 일치합니다.";

} else {

    echo "패턴이 일치하지 않습니다.";

}



이 예제에서는 `*abc*` 패턴과 `abc123def` 문자열을 비교합니다. `*`는 0개 이상의 문자를 의미하므로, 패턴이 일치합니다.

2. 정규 표현식

#hostingforum.kr
php

$pattern = '/^abc$/';

$string = 'abc';



if (fnmatch($pattern, $string)) {

    echo "패턴이 일치합니다.";

} else {

    echo "패턴이 일치하지 않습니다.";

}



이 예제에서는 `/^abc$/` 패턴과 `abc` 문자열을 비교합니다. `^`는 시작을 의미하고 `$`는 끝을 의미하므로, 패턴이 일치합니다.

3. 스페이스와 하이픈

#hostingforum.kr
php

$pattern = '*-abc-';

$string = 'abc-123-def';



if (fnmatch($pattern, $string)) {

    echo "패턴이 일치합니다.";

} else {

    echo "패턴이 일치하지 않습니다.";

}



이 예제에서는 `*-abc-` 패턴과 `abc-123-def` 문자열을 비교합니다. `-`는 단일 문자를 의미하므로, 패턴이 일치합니다.

4. 스페이스와 하이픈이 없는 패턴

#hostingforum.kr
php

$pattern = '*abc';

$string = 'abc123def';



if (fnmatch($pattern, $string)) {

    echo "패턴이 일치합니다.";

} else {

    echo "패턴이 일치하지 않습니다.";

}



이 예제에서는 `*abc` 패턴과 `abc123def` 문자열을 비교합니다. `*`는 0개 이상의 문자를 의미하므로, 패턴이 일치합니다.

5. 패턴이 없는 문자열

#hostingforum.kr
php

$pattern = '*abc';

$string = 'def';



if (fnmatch($pattern, $string)) {

    echo "패턴이 일치합니다.";

} else {

    echo "패턴이 일치하지 않습니다.";

}



이 예제에서는 `*abc` 패턴과 `def` 문자열을 비교합니다. 패턴이 일치하지 않습니다.

fnmatch 함수의 결론

PHP의 `fnmatch` 함수는 Unix shell의 `fnmatch` 함수를 구현한 함수로, 패턴 매칭을 위한 기능을 제공합니다. 이 함수는 패턴과 문자열을 비교할 수 있으며, 다양한 패턴을 지원합니다. 이 함수를 사용하여 파일 이름이나 디렉토리 이름과 같은 문자열을 패턴으로 비교할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 545 페이지

검색

게시물 검색