PHP或MySQL中是否有这样的功能?
function check($lower,$val, $upper)
{
if ($val>$lower && $val<$upper)
{
return $val;
}
if ($val<=$lower)
{
return $lower;
}
if ($val>=$upper)
{
return $upper;
}
}
答案 0 :(得分:4)
我不相信,但有min()
和max()
:
function check($lower, $val, $upper) {
return min(max($lower, $val), $upper);
}
答案 1 :(得分:2)
在MySQL中无法想到单一的功能,但这个习惯用法会做同样的事情:
GREATEST( @lower, LEAST( @val, @upper ) )
答案 2 :(得分:0)
我不知道一个,但您可以使用min()和max()。顺便说一句 - 看起来你真正要求的是三个整数的中点。无论哪种方式,代码看起来都像:
function midValue($lowerBound, $upperBound, $value) {
return (min($upperBound, max($lowerBound, $myValue)));
}
答案 3 :(得分:0)
<?php
echo(check(20, 40, 50));
function check($lower,$val, $upper){
if ($val>$lower && $val<$upper){
return $val; }
else if ($val<=$lower){
return $lower;}
else if ($val>=$upper){
return $upper;}
}
有效的php是否有效。我没有看到太多问题...
答案 4 :(得分:0)
它可以按照您的意图工作,添加一些文档,优选地采用Docbloc类型格式,可以很好地告诉人们你正在做什么。它增添了专业的触感。
我想汤姆会为你量化你的代码。
MYSQL答案的大拇指,很好! :)