在此数组中:
$array = array(6, 20, 50, 80, 100);
,
我想返回未通过特定数字的值。
例如,假设我有一个数字$number = 45;
。我想从20
返回$array
。
...,如果我有一个数字$number = 99;
,我想返回80。
如果数字为$number = 20;
,则仅返回20。
我该怎么做?
编辑:很抱歉不包含示例代码...这是我认为的一个简单问题。
基本上,这可以通过以下可接受的答案解决。
答案 0 :(得分:4)
您可以首先rsort数组,然后循环直到该值小于或等于您指定的值,然后再break退出循环,因为不再需要继续。
<div class="container">
<div class="img-container">
<img class="thumbnail" src="https://via.placeholder.com/250x250" />
<div classe="img-icon-container">
<i class="photo-icon fas fa-camera-retro" />
<span>10</span>
</div>
</div>
</div>
.container{
height: 200px;
display: flex;
margin-bottom: 20px;
.img-container {
position: relative;
.thumbnail {
height: 100%;
}
.img-icon-container {
position: absolute;
bottom: 0;
width: 100%;
left: 0;
background-color: rgba(110, 110, 110, 0.8);
i {
margin-left: 5px;
margin-right: 5px;
font-size: 20px;
color: white;
}
&:hover {
background-color: blue;
}
}
}
}
答案 1 :(得分:1)
遍历数组中的每个项目,对于每个低于数字的项目,请使用该数字替换变量。
$final = 0;
foreach($array as $element) {
if($element <= $number) {
$final = $element;
}
}
如果数组排列不正确,则应该做一些不同的事情。
$final-array = array();
foreach($array as $element) {
if($element <= $number) {
array_push($final-array, $element);
}
}
$final = 0;
foreach($final-array as $num) {
if($num>$final) {
$final = $num;
}
}