php 에서 strops 사용후 500에러가 납니다. 채택완료

안녕하세요! 오랫만에 또 질문이 생겨 이렇게 글을 남기게 되었습니다. ㅜㅜ

 

Copy
$omr = '1,누가바/죠스바/보석바|2,누가바/죠스바/보석바|3,누가바/죠스바/보석바|4,누가바/죠스바/보석바|5,누가바/죠스바/보석바|6,누가바/죠스바/보석바|';

$omr_member = '1,누가바 죠스바 보석바|2,누가바와죠스바|3,누가바 보석바|4,죠스바 보석바|5,죠스바와 보석바 누가바|6,죠스죠스죠스바 보석바 누가바|';

 

$omr_arr = explode('|',$omr);

$count = count($omr_arr);

$count = $count - 2;

$omr_member = explode('|',$omr_member);

for($i=0;$i<=$count;$i++) {

                    $omr_arr_explode = explode(',',$omr_arr[$i]);

                    $member = explode(',',$omr_member[$i]);

 

                    $omr_arr_count = count($omr_arr_explode);

                    $omr_arr_count = $omr_arr_count - 2;

                    $member_count = count($member);

                    $member_count = $member_count - 2;

                    $point = 0;     

 

                    if(strops('/',$omr_arr_explode[1]) !== false) {

                        $result = explode('/',$omr_arr_explode[1]);

                        $result_count = count($result);

                    

                        for($j=0;$j<$result_count;$j++){

                            if(strops($member[1],$result[$j]) !== false){

                                $point +=1;

                                $total_sum +=1;

                            }

                            else{

                                $point;

                                $total_sum;

                            }

                        }

                    }

                    else{

 

                        $result_one = $omr_arr_explode[1];

                        if(strops($member[1],$result_one) !== false){

                            $point +=1;

                            $total_sum +=1;

                        }

                        else{ 

                            $point;

                            $total_sum;

                        }

                    }

이러한 코드가 들어가게 되었는데 이후에 에러가 발생합니다ㅜㅜ.

여러방법으로 고칠려고 시도하고 있는데 잘되지가 않아 이렇게 질문을 남깁니다...

감사합니다!

답변 4개

채택된 답변
+20 포인트

 

 

strops는 오타이고

 

strpos와  strrpos 두가지가 있습니다. !== false문법은 strrpos가 더 잘됩니다

 

strrpos 로 바꿔보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변들 감사드립니당... 한번 수정하고 다시 해봐야겠네요ㅜㅜ
파이썬이랑 다른것들만 써오다가 php로 해보려니깐 모르겠는게 너무 많네요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

$omr, $omr_member 변수 값은 어떻게 생성되는건가요?

전체적인 코드로 봐서는 다차원 배열인데 이럴경우에는 여분필드나 DB에 저장때문에 위형태로 지정하신거라면 serialize(), json_encode() 를 이용하시는게 편하실것 같습니다.

 

다차원 배열을 만들고나서 반복문을 실행하게하는데 코드 가독성이나 복잡도가 낮아실것으로 보여집니다.

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

strops -> strpos 오타인듯

 

음 그리고 

else {

$point;

$total_sum;

}

이게 좀...

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고