note 118230 added to function.version-compare

From: Date: Thu, 29 Oct 2015 23:07:36 +0000
Subject: note 118230 added to function.version-compare
Groups: php.notes 
Request: Send a blank email to php-notes+get-204054@lists.php.net to get a copy of this message
Note that both leading and trailing spaces on your version numbers can break version_compare(). Tested on PHP 5.6.8: <?php echo "\nShould be 0"; echo "\n '1.0.0-pl' vs. '1.0.0-pl' ---> " . version_compare('1.0.0-pl', '1.0.0-pl'); echo "\n '1.0.0-pl' vs. ' 1.0.0-pl' ---> " . version_compare('1.0.0-pl', ' 1.0.0-pl'); echo "\n ' 1.0.0-pl' vs. '1.0.0-pl' ---> " . version_compare(' 1.0.0-pl', '1.0.0-pl'); echo "\n '1.0.0-pl' vs. '1.0.0-pl ' ---> " . version_compare('1.0.0-pl', '1.0.0-pl '); echo "\n '1.0.0-pl ' vs. '1.0.0-pl' ---> " . version_compare('1.0.0-pl ', '1.0.0-pl'); echo "\n\nShould be 1"; echo "\n '1.1.1-pl' vs. '1.0.0-pl' ---> " . version_compare('1.1.1-pl', '1.0.0-pl'); echo "\n ' 1.1.1-pl' vs. '1.0.0-pl' ---> " . version_compare(' 1.1.1-pl', '1.0.0-pl'); echo "\n\nShould be -1"; echo "\n '1.0.0-pl' vs. '1.1.1-pl' ---> " . version_compare('1.0.0-pl', '1.1.1-pl'); echo "\n '1.0.0-pl' vs. ' 1.1.1-pl' ---> " . version_compare('1.0.0-pl', ' 1.1.1-pl'); /* Output Should be 0 '1.0.0-pl' vs. '1.0.0-pl' ---> 0 '1.0.0-pl' vs. ' 1.0.0-pl' ---> 1 ' 1.0.0-pl' vs. '1.0.0-pl' ---> -1 '1.0.0-pl' vs. '1.0.0-pl ' ---> 1 '1.0.0-pl ' vs. '1.0.0-pl' ---> -1 Should be 1 '1.1.1-pl' vs. '1.0.0-pl' ---> 1 ' 1.1.1-pl' vs. '1.0.0-pl' ---> -1 Should be -1 '1.0.0-pl' vs. '1.1.1-pl' ---> -1 '1.0.0-pl' vs. ' 1.1.1-pl' ---> 1 */ ---- Server IP: 72.52.91.14 Probable Submitter: 70.196.142.252 ---- Manual Page -- http://php.net/manual/en/function.version-compare.php Edit -- https://master.php.net/note/edit/118230 Del: integrated -- https://master.php.net/note/delete/118230/integrated Del: useless -- https://master.php.net/note/delete/118230/useless Del: bad code -- https://master.php.net/note/delete/118230/bad+code Del: spam -- https://master.php.net/note/delete/118230/spam Del: non-english -- https://master.php.net/note/delete/118230/non-english Del: in docs -- https://master.php.net/note/delete/118230/in+docs Del: other reasons-- https://master.php.net/note/delete/118230 Reject -- https://master.php.net/note/reject/118230 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#204054) next »