strstr 과 strpos
어떤 문자나 문자열이 해당문자열에 포함 되어있는지 확인할 때 사용하는데요
php메뉴얼 에서
needle이 haystack에 존재하는지만을 확인하려 한다면, 더 빠르고 메모리를 적게 쓰는 strpos() 함수를 사용하십시오.
이런 내용을 본 후로 strpos만 사용합니다. 모르신 분들은 참고하시고....
지수만점을 위한 포스팅
댓글 12개
letsgolee
14년 전
strstr과 strpos는 사용예 자체가 다릅니다. "어떤 문자나 문자열이 해당문자열에 포함 되어있는지 확인할" 때 strstr을 쓰는 건 낭비입니다. 원래 그 목적으로 쓰는 게 아니거든요. 무조건 쓰고 안쓰고가 아니라어떤 목적으로 쓰느냐를 아시는게 먼저인것 같습니다.
다음은 strstr을 사용하는 예입니다.
<?php
$email = 'name@example.com';
$domain = strstr($email, '@');
echo $domain; // @example.com을 출력한다.
$user = strstr($email, '@', true); // As of PHP 5.3.0
echo $user; // name을 출력한다.
?>
참고적으로 strpos는 스트링의 위치를 말하므로 맨처음 있는 경우 0이 값이 됩니다. (예: anything에서 any) 그러므로 if 식에서 사용시 False값과 비교하셔야 합니다. 예:
<?php
if (strpos('anything', 'any') !== FALSE) echo "있습니다.";
?>
다음은 strstr을 사용하는 예입니다.
<?php
$email = 'name@example.com';
$domain = strstr($email, '@');
echo $domain; // @example.com을 출력한다.
$user = strstr($email, '@', true); // As of PHP 5.3.0
echo $user; // name을 출력한다.
?>
참고적으로 strpos는 스트링의 위치를 말하므로 맨처음 있는 경우 0이 값이 됩니다. (예: anything에서 any) 그러므로 if 식에서 사용시 False값과 비교하셔야 합니다. 예:
<?php
if (strpos('anything', 'any') !== FALSE) echo "있습니다.";
?>
14년 전
ststr 은 레츠고리님이 예를 든 메일 주소에서 도메인 부분을 반환해주는 용도이니 좀 다르지요
문자가 들어있는지만 판별 할때는 무조건 strpos...
그누보드 wiew.php write.php에 보면 html옵션 판별에 strstr을 사용하는 곳이 더러 보입니다
if (strstr($view[wr_option], "html1")) $html = 1;
이런 건 strpos 로 바꾸면 좋지않을까 합니다
문자가 들어있는지만 판별 할때는 무조건 strpos...
그누보드 wiew.php write.php에 보면 html옵션 판별에 strstr을 사용하는 곳이 더러 보입니다
if (strstr($view[wr_option], "html1")) $html = 1;
이런 건 strpos 로 바꾸면 좋지않을까 합니다
게시판 목록
자유게시판
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 |
|
1주 전 | 19 | |
| 199658 | 2개월 전 | 148 | ||
| 199657 | 2개월 전 | 263 | ||
| 199656 | 2개월 전 | 200 | ||
| 199655 | 2개월 전 | 142 | ||
| 199654 |
|
2개월 전 | 192 | |
| 199653 |
|
2개월 전 | 106 | |
| 199652 |
|
2개월 전 | 216 | |
| 199651 | 2개월 전 | 210 | ||
| 199650 | 2개월 전 | 144 | ||
| 199649 | 2개월 전 | 201 | ||
| 199648 | 2개월 전 | 245 | ||
| 199647 | 2개월 전 | 247 | ||
| 199646 | 2개월 전 | 246 | ||
| 199645 | 2개월 전 | 152 | ||
| 199644 | 2개월 전 | 278 | ||
| 199643 |
비버팩토리
|
2개월 전 | 209 | |
| 199642 | 2개월 전 | 388 | ||
| 199641 |
bbebbee
|
2개월 전 | 152 | |
| 199640 |
jaick
|
2개월 전 | 175 | |
| 199639 | 2개월 전 | 266 | ||
| 199638 | 2개월 전 | 208 | ||
| 199637 | 2개월 전 | 200 | ||
| 199636 | 2개월 전 | 231 | ||
| 199635 | 2개월 전 | 215 | ||
| 199634 |
비버팩토리
|
2개월 전 | 153 | |
| 199633 | 2개월 전 | 126 | ||
| 199632 | 2개월 전 | 222 | ||
| 199631 | 2개월 전 | 235 | ||
| 199630 | 2개월 전 | 226 | ||
| 199629 | 2개월 전 | 230 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기