首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在CakePHP中合并2个数组

在CakePHP中合并2个数组
EN

Stack Overflow用户
提问于 2011-02-02 15:32:58
回答 5查看 3.3K关注 0票数 2

我有两个数组array1和array2。我希望将这两个数组合并为一个数组,并在下拉列表中显示合并后的数组的值。我想要第一个数组的值-第二个数组的值。

例如:

代码语言:javascript
复制
$employeePlaces1 = array(1, 2, 4,9);
$employeePlaces2 = array(3, 5, 6,7);

我想在下拉列表中将值设置为$employeePlaces1[0]-$employeePlaces2[1]$employeePlaces1[0]-$employeePlaces2[1]

代码语言:javascript
复制
    1-3,
    2-5,
    4-6, 
    9-7.

我该怎么做呢?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-02-02 18:24:03

代码语言:javascript
复制
$employee1 = array(1, 2, 4, 9);
$employee2 = array(3, 5, 6, 7);

function doMerge($n, $m) {
    return $n.'-'.$m;
}


$c = array_map("doMerge", $employee1, $employee2);

print_r($c);

或者使用带有lambda style functions的PHP5.3语法

代码语言:javascript
复制
$c = array_map(function($n, $m) {return $n.'-'.$m;}, $employee1, $employee2);
票数 2
EN

Stack Overflow用户

发布于 2011-02-02 15:37:38

您可以使用array_diff函数

http://www.php.net/manual/en/function.array-diff.php

已编辑问题的答案

代码语言:javascript
复制
//assuming both the arrays have the same length
echo "<select>";
for($i=0;$i<count($employeePlaces1);$i++)
{
    echo "<option>".$employeePlaces1[i]." - ".$employeePlaces2[i]."</option>";
}
echo "</select>";
票数 2
EN

Stack Overflow用户

发布于 2011-02-02 17:05:35

下面是如何手动遍历它们并将这些值匹配在一起。

代码语言:javascript
复制
$list = array();
for($i=0; $i<=count($employeePlaces1); $i++) {
    $list[] = $employeePlaces1[$i].'-'.$employeePlaces2[$i];
}

还没有测试过,但应该是您需要的要点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4871827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档