php 문자열 찾기

php 문자열 찾기

QA

php 문자열 찾기

본문

page.php

 

<div> <!--div .class 주고 싶음-->

   <p><?php echo $wr_1 ?></p> <!--혹은 p.class 주고 싶음-->

</div>

 

 

 

여분필드 wr_1로 텍스트를 넣고

페이지 안에 wr_1의 문자를 찾아서 효과를 주고 싶습니다 

 

php 의 strpos()로 문자를 찾아서 그 문자를 가지고 있는 부모 p 혹은 조상인 div에게 

class를 붙이고 싶은데요 

 

문자를 찾는데 까지는 햇는데 그 부모에서 class를 어떻게 붙여야 할지 모르겠어요 

 

/*문자열 찾기*/

<?php 
//print_r2($wr_1);
$categoryName = $wr_1;
if(strpos($categoryName) !== false) {  
    echo $categoryName
} else {  
    echo "해당 문자가 없습니다";  

?> 

 

여기서 해당 문자열을 갖고 있는 부모 혹은 조상에게 선택적으로 class 넣는 법좀 알려주세요 

 

고수님들 부탁 드립니다~~~

 

 

 

 

 

이 질문에 댓글 쓰기 :

답변 2

strpos 의 사용법에 오류가 있습니다.

 

strpos($변수 , '찾을문자') !== false

 

와 같이 되어야 합니다.

그리고 

if( 조건) 

   특정변수 = 대상

 

이라는 구조로 로직을 만들면

 

태그를 뿌리는영역에서

<div <?php if(특정변수) { " class = ' 넣을 class ' "; } ?> >

       <?php echo $wr_1; ?>

</div>

 

와 같이 처리를 하시면 원하는 기능의 처리는 가능합니다.

플래토님 일단 답변 너무 감사합니다 근데 도저히 class 가 붙지 않아요 뭐가 잘못된건가요? 코드좀 봐주실 수 있나요?

<?php
$categoryName = $text;
$t_setting = str_replace('_',' ',$categoryName);
if(str_replace('_',' ',$categoryName) !== false) { 
    $wr_1 = $t_setting;
}
?>

<div <?php if($wr_1) { "class = 'Big_font' "; } ?> >
      <?php echo $text; ?>
</div>


if(str_replace('_',' ',$categoryName) !== false) {
이게 무슨 문장이죠?


strpos 를 처리하고 싶으셨던거 같은데

변수에 어떤 문자가 포함된걸 찾오싶으신건지요?

if (strpos($categoryName, '찾을문자') !== false)  {
가 되어야 할거 같네요

텍스트가 있는 패런트 태그를 찾는 것은 자바스크립트에서는 다음과 같은 예가 있습니다.

 

https://stackoverflow.com/questions/50597213/find-parent-element-of-string-in-javascript

 

PHP에서는 한다고 하면, preg_replace 같은 것을 사용해서 강제로 앞뒤로 p태그를 넣는 방법이 생각이 나네요.

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 530
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT