Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php版本字符串排序数组_Php - Fatal编程技术网

php版本字符串排序数组

php版本字符串排序数组,php,Php,我想对php中的版本字符串数组进行排序 输入如下: ["2019.1.1.0", "2019.2.3.0", "2019.2.11.0", "2020.1.0.0", "2019.1.3.0", "2019.3.0.0"] 最简单的排序方法是什么?按原样对字符串排序不起作用,因为这会使2019.2.11.0先于2019.2.3.0,当然这不是我想要的 结果应该是 ["2019.1.1.0", "2019.1.3.0", "2019.2.3.0", "2019.2.11.0", "2019.3.

我想对php中的版本字符串数组进行排序

输入如下:

["2019.1.1.0", "2019.2.3.0", "2019.2.11.0", "2020.1.0.0", "2019.1.3.0", "2019.3.0.0"]
最简单的排序方法是什么?按原样对字符串排序不起作用,因为这会使2019.2.11.0先于2019.2.3.0,当然这不是我想要的

结果应该是

["2019.1.1.0", "2019.1.3.0", "2019.2.3.0", "2019.2.11.0", "2019.3.0.0", "2020.1.0.0"]

你在寻找一种自然的类型

$versions=[2019.1.1.0、2019.2.3.0、2019.2.11.0、2020.1.0.0、2019.1.3.0、2019.3.0.0]; $sorted=$versions; natsort$sorted; 您应该使用版本比较功能

这是如何将usort与version_compare一起使用

$a=[2019.1.1.0、2019.2.3.0、2019.2.11.0、2020.1.0.0、2019.1.3.0、2019.3.0]; usort$a,“版本比较”; var_dump$a; 结果

array(6) {
  [0]=>
  string(10) "2019.1.1.0"
  [1]=>
  string(10) "2019.1.3.0"
  [2]=>
  string(10) "2019.2.3.0"
  [3]=>
  string(11) "2019.2.11.0"
  [4]=>
  string(10) "2019.3.0.0"
  [5]=>
  string(10) "2020.1.0.0"
}
array(6) {
  [0]=>
  string(10) "2019.1.1.0"
  [1]=>
  string(10) "2019.1.3.0"
  [2]=>
  string(10) "2019.2.3.0"
  [3]=>
  string(11) "2019.2.11.0"
  [4]=>
  string(10) "2019.3.0.0"
  [5]=>
  string(10) "2020.1.0.0"
}