php循环打印出来,仅在PHP循环期间值在特定组内时打印出某些内容

我在整个站点中使用了大量阵列,仅为了以下任务而更改其结构将很痛苦.我想用另一个数组制作几个选择框.我想要得到的输出是这样的:

/* Example Array:

$allAnimals = array("Frogs","Toads","Bats","Elephants","Rats","Seals",

"Crocodilians","Turtles");

$group = array("Frogs"=>"Amphibian","Bats"=>"Mammal","Crocodilians"=>"Reptile");

*/

Frogs

Toads

Bats

Elephants

Rats

Seals

Crocodilians

Turtles

我无法弄清楚如何仅在$group每次迭代期间值在特定动物组内时打印出选项.我尝试过each()从$group获取下一个动物$endAnimal,然后如果$animal与$endAnimal相匹配,则中断内部循环,但是我还需要使循环开始以特定值打印选项.

$allAnimals = array("Frogs","Toads","Bats","Elephants","Rats","Seals","Crocodilians","Turtles");

$group = array("Frogs"=>"Amphibian","Bats"=>"Mammal","Crocodilians"=>"Reptile");

foreach($group as $thisAnimal=>$category){

$nextKey = (each($group));

$endAnimal = $nextKey['key'];

print "";

foreach($allAnimals as $idx=>$animal){

print "$animal";

if($endAnimal === $animal){

break;

}

}

print "";

}

?>

解决方法:

请检查一下:

$allAnimals = array("Frogs","Toads","Bats","Elephants","Rats","Seals","Crocodilians","Turtles");

$group = array("Frogs"=>"Amphibian","Bats"=>"Mammal","Crocodilians"=>"Reptile");

$group_keys = array_keys($group); // get the keys of group array

$j = 0;

foreach($group_keys as $key => $group_k){

print "";

if(isset($group_keys[$key+1])){

$new_value = $group_keys[$key+1];

}else{

$new_value = '';

}

if($new_value ==''){

foreach($allAnimals as $key => $allAnm){

print "$allAnm";

unset($allAnimals[$key]);

$j ++;

}

}else{

$key_from = array_search($new_value,$allAnimals);

for($i = 0; $i

print "$allAnimals[$i]";

unset($allAnimals[$i]);

$j ++;

}

}

$allAnimals = array_values($allAnimals);

print "";

}

标签:loops,foreach,arrays,php

来源: https://codeday.me/bug/20191120/2041964.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值