PHP version comparison function version_compare() function

WBOY
Release: 2016-08-08 09:33:14
Original
1584 people have browsed it

Recently, when I was working on a project, I remembered PHP version comparison. I checked Baidu and found the version_compare() function.

This is how the version_compare() function is described in the PHP manual:

version_compare() is used to compare two "PHP normalized" version number strings. This is helpful for writing programs that are only compatible with certain versions of PHP

This function first replaces _, - and + with a dot in the version string. It will also insert a dot before and after any non-number. In this way, something like '4.3.2RC1' will become '4.3.2.RC .1'. Next it splits the result, just like you would with explode('.', $ver) . It then compares the sections from left to right. If a section contains a specific version string, it will be processed in the following order: Any string not found in the list < dev < alpha = a < beta = b < RC = rc < # < pl =p. Not only can this method compare different version levels like '4.1' and '4.1.2', but it can also be specified to compare any version that contains PHP development status.

mixed version_compare ( string $version1 , string $version2 [, string $operator ] )

Return mixed

string $version1 - version 1 required

string $version2 - version 2 required

string $operator - understand it as an operator. Optional

That is, <, lt, <=, le, >, gt, >=, ge, ==, =, eq, !=, <> and ne.

If the third parameter is specified, boolean is returned. If the third parameter is not specified, the following three situations are returned:

Return -1 when the first version is lower than the second version

Return 0 when the first version is equal to the second version

When the first version is less than the second version, return 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;

}
Copy after login

The result is as follows:

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>
Copy after login

The above introduces the PHP version comparison function version_compare() function, including the content of PHP version comparison and version_compare. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template