因为Bitbucket API没有提供获取存储库的最新标记的方法,所以我发现自己必须从所有标记的数组中获取它.
你怎么做呢?
我尝试过max但它对某些数字不起作用,例如
max(['1.0.8', '1.0.9', '1.0.10']);
Run Code Online (Sandbox Code Playgroud)
返回'1.0.9'.
我知道标签只会是三个数字a.b.c,因为我们为我们的回购标签做标记的方式,他们不会有其他半字节接受的字符串,如alpha等.
你是怎么做到的?
dec*_*eze 11
$versions = ['1.0.8', '1.0.9', '1.0.10'];
usort($versions, 'version_compare');
echo end($versions);
Run Code Online (Sandbox Code Playgroud)
见http://php.net/version_compare
如果您不想修改数组:
echo array_reduce($versions, function ($highest, $current) {
return version_compare($highest, $current, '>') ? $highest : $current;
});
Run Code Online (Sandbox Code Playgroud)