Extra Form
PHP PHP 7.0
CMS XpressEngine

링크의 문제를 해결하다가 코어버전을 확인하는 것에 오류가 있음을 확인했습니다.

 

if($core_ver >= 1.7)

 

 

위 비교값이..

 

1.9.8 에서는 참이 나오고

1.11.1 에서는 참이 아닌 결과가 나오는 이유가 뭘까요??

 

 

현실적으로 코어버전 변경으로 인해 차라리 그냥 코어버전을 확인하는 과정을 없애는게 더 좋긴합니다. 일단 저희도 그렇게 처리..

 

  • profile
    숫자로 생각하면 답이 나오네요.....-0-;;;;
    1.1은 1.7보다 작은 숫자니까요.

    문자로 비교해도
    앞쪽의 1.까지는 동일한데 그 다음에 나오는 1이 7보다 작네요.
  • profile profile

    소수점으로 계산하는거네요..
    일점십일이 아니라 일점일일 이었어어요.. 털썩....
    기존 자료중 코어버전 확인해서 한던 것들이 가끔 있었던 것 같은데 조금 혼란이 있겠네요.

    일점십일로 판단하게 해주어야 올바른 버전 확인이 되겠네요.
    어떤 방법들로 구현들 하시는지 궁금하네요.

  • profile
    저렇게 검사하면 안되고 버전 비교에 쓰는 함수가 따로 있어요.. 먼지 까먹어서..ㅠ
  • profile profile
    그러니까요. 버전 확인하는 룰이 따로 있을 것 같네요. 그 룰대로 안하고 수식 비교로 쓴 곳은 모두 오류가 나겠네요.
  • profile
    <!--@if(__XE_VERSION__ < '1.7.6')-->
    .
    .
    .
    <!--@end-->
  • profile profile
    제 눈에는 ' 따옴표 말고는 다른것을 찾지 못하겠어요 ㅡㅡ;
  • profile profile
    이 코드도 1.10이상에서는 작동 안하겠군요.
  • profile profile
    네. 그동안 문제가 없었던게... 1.9 까지 진행이 되었었던 것 때문이데요.
    1.11 이 발표되면서 문제가 확인되었네요.
  • profile

    버전은 소수가 아니기 때문에 (소수점이 2개씩 있는 소수 보셨어요? ㅋㅋ)
    버전을 비교할 때는 version_compare라는 버전 비교 전용 함수를 사용해야 합니다.

    if(version_compare($core_ver, '1.7', '>='))

  • profile profile

    오... version_compare 요런 함수를 써야 하는거군요 ㅋㅋ

     

    요 글은 스크랩 해 놓았다가 필요할때 참조해야 겠습니다. 문제가되는 모듈은 그냥 버전비교 자체를 삭제!!! ㅋ

  • profile profile
    초등학교 졸업한지 오래되서 소수점이 여러개가 가능한지 아닌지 모르겠습니다 ㅋ
  • profile profile
    제가 말한게 저거에요 저거!!!!!!!!
  • profile profile
    그러게요!!!!!!!!!!!!!
  • profile profile
    기본적으로는 숫자에는 없죠 ㅎㅎ
  • ?
    댓글들이 다들 귀여우시네여 ㅋㅋ