为了账号安全,请及时绑定邮箱和手机立即绑定

前级循环中的两个数组

前级循环中的两个数组

PHP
慕神8447489 2019-07-06 15:48:56
前级循环中的两个数组我想生成一个selectbox使用两个数组,一个数组包含国家代码,另一个数组包含国家名称。这就是一个例子:<?php     $codes = array('tn','us','fr');     $names = array('Tunisia','United States','France');     foreach( $codes as $code and $names as $name ) {         echo '<option value="' . $code . '">' . $name . '</option>';     }?>这种方法对我没用。有什么建议吗?
查看完整描述

3 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

foreach( $codes as $code and $names as $name ) { }

这是无效的。

你可能想要这样的东西.。

foreach( $codes as $index => $code ) {
   echo '<option value="' . $code . '">' . $names[$index] . '</option>';}

或者,让代码成为您的密钥要容易得多。$names阵列.。

$names = array(
   'tn' => 'Tunisia',
   'us' => 'United States',
   ...);


查看完整回答
反对 回复 2019-07-06
?
慕森王

TA贡献1777条经验 获得超3个赞

foreach一次只能在一个数组上操作。

数组的结构方式,您可以array_combine()然后,将它们放入键值对数组中。foreach这个单一的数组:

foreach (array_combine($codes, $names) as $code => $name) {
    echo '<option value="' . $code . '">' . $name . '</option>';}

或者,如其他答案所示,您可以对关联数组进行硬编码。


查看完整回答
反对 回复 2019-07-06
?
富国沪深

TA贡献1790条经验 获得超9个赞

使用array_combine()将数组融合在一起并对结果进行迭代。

$countries = array_combine($codes, $names);


查看完整回答
反对 回复 2019-07-06
  • 3 回答
  • 0 关注
  • 370 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信