如何从n个字符串(其中有x个空字符串,0≤x≤n)中挑选出那个不为空的最短字符串(m)。
与此同时还需要兼顾考虑以下特例:如果n个字符串中有x个为空(x<n),则m为空。
比如我们可以定义n=10,x=5,这就意味着:
1、当10个字符串中有2个是空字符串(2显然是小于5的),则m=最短的那个非空字符串
2、当10个中有5个或6个是空字符串时,则m=''(m=空)
echo '最长'.$arr3[0]."
"; //最长的
if($x1-$x2>=3){ //x1是所有字符串个数,包括空字符串; x2不包括空字符串的个数 我随便设置空的至少3个
echo "空";
return;
}else{ //没有空的或者空小于2的
echo $arr3[$x2-1]."
";
echo $arr3[$x2-2]."
";
}
代码如下:
<!DOCTYPE html>
<html>
<body>
<?php
$strs=array("Volvo","BMW","Toyota","","");
$n=count($strs);
$input_x=3;
$m="";
echo $arrlength;
$minlen=strlen($strs[0]);
$emptynum=0;
for($x=0;$x<$n;$x++)
{
if(strlen($strs[$x]) == 0 )
{
$emptynum+=1;
if($emptynum>=$input_x)
{
$m="";
break;
}
}else{
$len = strlen($strs[$x]);
if($len<$minlen)
{
$minlen = $len;
$m = $strs[$x];
}
}
}
echo PHP_EOL;
echo "最小字符串m为:".$m;
?>
</body>
</html>
输出为:
最小字符串m为:BMW