Проверьте, является ли данная строка номером версии

Есть ли способ проверить, является ли данная строка номером версии или нет? У меня есть некоторый пользовательский ввод, и мне нужно убедиться, что данная мне строка может использоваться в качестве номера версии. Я видел, что PHP имеет version_compare() функция, но это похоже на сравнение двух версий друг с другом.

Я предполагаю, что данная строка должна быть «стандартизированной PHP» версией.

3

Решение

Я не уверен, что это лучший способ, но используя version_compare() Я просто гарантировал, что это было по крайней мере 0.0.1 отфильтровывая строки «не версии»:

version_compare( $given_version, '0.0.1', '>=' )

Например:

if( version_compare( $_POST['_plugin_vers'], '0.0.1', '>=' ) >= 0 ) {
echo 'Valid Version';
} else {
echo 'Invalid Version';
}
6

Другие решения

if(preg_match('/^(\d+\.)?(\d+\.)?(\*|\d+)$/', $string)){
echo 'Valid';
} else {
echo 'Invalid';
}
2

По вопросам рекламы [email protected]