개발 꿀팁/PHP

php가 문자열에 지정된 문자열이 포함되어 있는지 여부를 판단하는 몇 가지 방법

Jammie 2022. 7. 6. 14:51
반응형

프로그램을 작성할 때, 항상 문자열을 처리해야 합니다. 가장 기본적인 것은 문자열 검색입니다. php에서 문자열에 지정된 문자열이 포함되어 있는지 여부를 감지하면 정규를 사용할 수 있습니다. 만약 정규에 대해 잘 모르면 몇 가지 함수를 통해 편리함을 제공할 수 있습니다.

strstr
strstr() 함수는 다른 문자열에서 처음 나타나는 문자열을 검색합니다.
이 함수는 문자열의 나머지 부분 (일치점에서)을 되돌려줍니다.검색할 문자열을 찾을 수 없으면 false를 반환합니다.

코드는 다음과 같습니다.

<?php
 /*수첩의 예와 같다*/
 $email = 'user@example.com';
 $domain = strstr($email, '@');
 echo $domain;
 // prints @example.com
?>

1.stristr
stristr() 함수 검색 문자열이 다른 문자열에서 처음 나타나는 위치를 찾습니다.
성공하면 문자를 되돌려줍니다문자열의 나머지 부분(일치점부터).이 문자열을 찾을 수 없으면 false를 반환합니다.
그것과 strstr의 사용유일한 차이점은 스트리스트가 대소문자를 구분하지 않는다는 것이다.

1.strpos
strpos 함수 반환boolean 값.FALSE와 TRUE는 더 말할 필요가 없습니다. "==="로 판단하십시오..strpos는 실행 속도에서 위의 두 함수보다 빠르며, 또한 strpos는 하나의 파라미터로 판단의 위치를 지정하지만,기본값은 공백입니다. 전체 문자열을 판단하는 것을 의미합니다. 단점은 중국어를 잘 지원하지 않는다는 것입니다.

예 1

<php
if(strpos('www.jb51.net','jb51') !== false){ 
 echo '포함하다jb51'; 
}else{
 echo '포함하지 않음jb51'; 
}
?>

예 2

$str= 'abc';
$needle= 'a';
$pos = strpos($str, $needle); // 처음 찾은 문자열의 위치를 되돌려줍니다. 여기서 1을( 를) 반환하고, 찾을 수 없으면 False를 반환합니다

1.explode

explode로 PHP 판단 문자열의 포함 코드는 다음과 같다

function checkstr($str){
 $needle ='a';//a를 포함할지 여부를 판단합니다
 $tmparray = explode($needle,$str);
 if(count($tmparray)>1){
  return true;
 } else{
  return false;
 }
}

5. substr 예를 들어 우리는 마지막 문자가 작성되었는지 아닌지를 판단해야 한다

<?php
/*
$str1="<p>이거 윈라 전용 dll인데 내려와. 아 괜찮은 dll 파일,QlogWin32.dll</p>";
if(substr($str1,-8)==".dll</p>"){
echo substr($str1,0,-4);
}
?>

6,substr_count는 "부문자열"이 "원래 문자열에 나타나는 횟수"를 계산합니다.

substr_count() 함수는 원래 작은 문자열이 큰 문자열에 나타나는 횟수입니다:
$number = substr_count(big_string, sm)all_string)
문자열 big_string 여부를 판단하기 위해 오늘 마침 문자열을 찾는 기능이 필요합니다small_string 문자열 포함, true나 fasle을 반환합니다.

한참 동안 매뉴얼을 살펴보았지만, 기성 함수를 찾지 못하자, substr_count 함수를 쓸 수 있다고 생각했다.구현 코드는 다음과 같습니다

function check_str($str, $substr)
{
 $nums=substr_count($str,$substr);
  if ($nums>=1)
  {
   return true;
  }
  else
  {
   return false;
  }
}

엄청 쉬워요!

구체적으로 여러분은 관련 함수를 찾아보고 고급스럽게 응용할 수 있습니다

반응형