최근 프로젝트를 진행하다보니 PHP 버전 비교가 생각나서 바이두를 확인해보니 version_compare() 함수를 발견했습니다.
PHP 매뉴얼에서 version_compare() 함수를 설명하는 방법은 다음과 같습니다.
version_compare()는 두 개의 "PHP 정규화된" 버전 번호 문자열을 비교하는 데 사용됩니다. 이는 특정 버전의 PHP와만 호환되는 프로그램을 작성하는 데 유용합니다
이 함수는 먼저 버전 문자열에서 _, - 및 +를 점으로 대체합니다. 또한 숫자가 아닌 값 앞뒤에 점을 삽입합니다. 이런 식으로 '4.3.2RC1'과 같은 것이 '4.3. 2.RC.1'. 다음으로explore('.', $ver) 에서와 마찬가지로 결과를 분할합니다. 그런 다음 섹션을 왼쪽에서 오른쪽으로 비교합니다. 섹션에 특정 버전 문자열이 포함되어 있으면 다음 순서로 처리됩니다. < dev < alpha = b < RC < 피. 이 방법은 '4.1' 및 '4.1.2'와 같은 다양한 버전 수준을 비교할 수 있을 뿐만 아니라 PHP 개발 상태가 포함된 모든 버전을 지정할 수도 있습니다.
혼합 version_compare ( 문자열 $version1
, 문자열 $version2
[, 문자열 $operator
] )
혼합 반품
문자열 $version1 - 버전 1 필요
문자열 $version2 - 버전 2 필요
string $operator - 연산자로 이해하세요.
즉, <, lt, <=, le, >, 입니다. gt , >=, ge, ==, =, eq, !=, <> 그리고 네.
세 번째 매개변수를 지정하면 부울이 반환됩니다. 세 번째 매개변수를 지정하지 않으면 다음 세 가지 상황이 반환됩니다.
첫 번째 버전이 두 번째 버전보다 낮으면 -1을 반환합니다.
첫 번째 버전이 두 번째 버전과 같으면 0을 반환합니다.
첫 번째 버전이 두 번째 버전보다 작으면 1을 반환합니다.
<?php header('content-type:text/html;charset=utf-8'); /** * 判断php的版本是否在5.3.0以上 */ echo '<pre class="brush:php;toolbar:false">'; //本人使用的版本为 5.2.17 echo 'PHP的当前版本为 '.PHP_VERSION."\n"; var_dump(version_compare(PHP_VERSION,'5.2.0')); var_dump(version_compare(PHP_VERSION,'5.2.0','=')); var_dump(version_compare(PHP_VERSION,'5.3.0','ge')); if(version_compare(PHP_VERSION,'5.3.0','ge')){ echo '您的PHP版本大于5.3.0,当前版本为 '.PHP_VERSION; }else{ echo '您的PHP版本小于5.3.0,当前版本为 '.PHP_VERSION; }
결과는 다음과 같습니다.
PHP的当前版本为 <span>5.2</span>.<span>17</span><span> int(</span><span>1</span><span>) bool(</span><span>false</span><span>) bool(</span><span>false</span><span>) 您的PHP版本小于5.</span><span>3.0</span>,当前版本为 <span>5.2</span>.<span>17</span>
위에서는 PHP 버전 비교, version_compare 등 PHP 버전 비교 함수 version_compare() 함수를 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.