php 에서 strops 사용후 500에러가 납니다.
본문
안녕하세요! 오랫만에 또 질문이 생겨 이렇게 글을 남기게 되었습니다. ㅜㅜ
$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
strops는 오타이고
strpos와 strrpos 두가지가 있습니다. !== false문법은 strrpos가 더 잘됩니다
strrpos 로 바꿔보세요
$omr, $omr_member 변수 값은 어떻게 생성되는건가요?
전체적인 코드로 봐서는 다차원 배열인데 이럴경우에는 여분필드나 DB에 저장때문에 위형태로 지정하신거라면 serialize(), json_encode() 를 이용하시는게 편하실것 같습니다.
다차원 배열을 만들고나서 반복문을 실행하게하는데 코드 가독성이나 복잡도가 낮아실것으로 보여집니다.
strops -> strpos 오타인듯
음 그리고
else {
$point;
$total_sum;
}
이게 좀...
답변들 감사드립니당... 한번 수정하고 다시 해봐야겠네요ㅜㅜ
파이썬이랑 다른것들만 써오다가 php로 해보려니깐 모르겠는게 너무 많네요
답변을 작성하시기 전에 로그인 해주세요.