쉼표로 구분된 데이터 안에서 원하는 값 찾는 if 문 궁금해요.

쉼표로 구분된 데이터 안에서 원하는 값 찾는 if 문 궁금해요.

QA

쉼표로 구분된 데이터 안에서 원하는 값 찾는 if 문 궁금해요.

본문

<?php echo $word ?>

이렇게 하면

가,나,다,라,마,바,사,아

이런식으로 단어가 쉼표로 구분되어 여러가지 복수로 들어있습니다.

 

궁금해요1

<?php if($word == '가') echo '가 단어가 포함'; ?>

이런식으로 $word 안에 가 라는 단어가 포함되어있다면 작동하는 if 문을 알고 싶습니다.

 

궁금해요2

<?php echo $word ?> 변수가

가,나,다,라,마,바,사,아

이런식으로 문자열이 있는데

여기서 ~번째 문자를 추출하고 싶습니다.

 

<?php echo $wrod 의 3번째문자 추출 ?>

 

 

항상 도움주시는 고수님들 감사합니다!

감기 걸리지 않게 조심하세요^^

 

 

이 질문에 댓글 쓰기 :

답변 2

힌트 explode 함수를 써서 배열로 저장한 다음 배열안에 특정값 검색 함수(in_array)를 써서 찾아낸 다음 그 인덱스값을 얻으셔서 for문으로 그 인덱스까지 돌려 출력하시면 될 것 같습니다. 

몸이 조금 아파서 말로만 개념만 설명드려서 죄송합니다. 

 

 

php.net 의 함수예제에서

 

explode 함수


// Example 1
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
// Example 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
 

 

in_array


$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
    echo "Got Irix";
}
if (in_array("mac", $os)) {
    echo "Got mac";
}

몸 아프신데 고생하십니다. 이어서 답변달겠습니다.

$word = "가,나,다,라,마,바";

형태로 저장이 되어 있다면,

$words = explode(",",$word);
이렇게 하면

$words = array("가","나","다","라","마","바);
이렇게 저장이 된 것과 마찬가지가 됩니다.

따라서, $words[0] == "가", $words[1] == "나" 이렇게 되겠지요.  (궁금해요 1)

이 항목에서 검색을 하고자 하시면
if(in_array("가",$words)) echo "가 단어가 포함";
이렇게 하시면 되겠습니다.                                                            (궁금해요 2)


핵심은, "," 라는 문자를 기준으로 배열화시키고,
그 배열을 사용하는 것입니다.

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

회원로그인

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