当array_combine不是解决方案时,如何组合这两个数组?

时间:2012-03-30 03:40:11

标签: php arrays

我有一个名为$name[]的数组和另一个名为$content[]的数组。两个数组都有相同的对象(3)。 $content[]数组可能包含0,1或2条消息,如下所示。

我的目标是用$name[0]回复$content[0],依此类推。该名称将首先打印并在可用消息之后打印。我没有运气就尝试使用array_combine

有什么方法可以做到这一点?

$名称[]

Array
(
    [0] => 
    [1] => 
    [2] => 
)

$内容[]

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [message] => 
                )

        )

    [1] => Array
        (
        )

    [2] => Array
        (
            [0] => Array
                (
                    [message] => 
                )

            [1] => Array
                (
                    [message] => 
                )

        )
)

2 个答案:

答案 0 :(得分:2)

真的不知道你想要做什么;问题不是很清楚。你的预期产量是多少?

这是我在黑暗中的刺:

$count = min(count($name),count($content));

for($i=0; $i<$count; ++$i) {
    echo $name[$i];
    foreach($content[$i] as $msg) {
        echo $msg['message'];
    }
}

答案 1 :(得分:1)

喜欢这样吗?

$name = array(...);
$content = array(...);

foreach( $content as $k => $v )
{
  if( array_key_exists( $k, $name ) )
    echo $name[$k];

  if( array_key_exists( $k, $content ) )
    echo $content[$k];
}