Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数组映射和数组映射组合用于两个以上的数组_Php_Arrays - Fatal编程技术网

Php 数组映射和数组映射组合用于两个以上的数组

Php 数组映射和数组映射组合用于两个以上的数组,php,arrays,Php,Arrays,众所周知,array\u combine仅用于两个数组。比如说 $name = array('John','Brian','Raj'); $salary = array('500','1000','2000'); $details = array_combine($name, $salary); foreach($details AS $name => $salary){ echo $name."'s salary is ".$salary."<br/>"; } 在这种情况下

众所周知,
array\u combine
仅用于两个数组。比如说

$name = array('John','Brian','Raj');
$salary = array('500','1000','2000');
$details = array_combine($name, $salary);
foreach($details AS $name => $salary){ echo $name."'s salary is ".$salary."<br/>";
}
在这种情况下,仅使用
array\u combine
是不够的,因此我发现
array\u map
是更好的解决方案。但是如何回显
array\u map
结果呢?如何访问
array\u map
生成的数组值,并根据个人需求获取

$details = array_map(function($item) {
    return array_combine(['name', 'salary', 'dpart', 'address'], $item);
}, array_map(null, $name, $salary, $dpart, $address));
现在的要求是使用单独的值访问所有四个数组。比如说


$name.”的薪水是“$salary.”,地址是“$address.”,离职是“$dpart”

不将以下各项合并起来可能很简单:

<?php
$name    = array('John','Brian','Raj');
$salary  = array('500','1000','2000');
$dpart   = array('HTML','CSS','PHP');
$address = array('Floor 3','Floor 5','Floor 6');

foreach($name as $k => $v)
    printf(
        "%s's salary is %d, address is %s, depart is %s\n",
        $name[$k],
        $salary[$k],
        $dpart[$k],
        $address[$k]
    );
您可以在数组映射中循环,并使用列表或项索引:

foreach(array_map(null, $name, $salary, $dpart, $address) as $item) {
    list($n, $s, $d, $a) = $item;
    print "$n's salary is $s, address is $d, depart is $a\n";
}

不将以下各项结合起来可能同样简单:

<?php
$name    = array('John','Brian','Raj');
$salary  = array('500','1000','2000');
$dpart   = array('HTML','CSS','PHP');
$address = array('Floor 3','Floor 5','Floor 6');

foreach($name as $k => $v)
    printf(
        "%s's salary is %d, address is %s, depart is %s\n",
        $name[$k],
        $salary[$k],
        $dpart[$k],
        $address[$k]
    );
您可以在数组映射中循环,并使用列表或项索引:

foreach(array_map(null, $name, $salary, $dpart, $address) as $item) {
    list($n, $s, $d, $a) = $item;
    print "$n's salary is $s, address is $d, depart is $a\n";
}

您只需使用
foreach
即可访问结果。循环
$details
as

foreach($details as $item) {
    $name    = $item['name'];
    $salary  = $item['salary'];
    $dpart   = $item['dpart'];
    $address = $item['address'];
    echo $name."'s salary is ".$salary.", address is ".$address.", depart is ".$dpart."<br/>";
}
foreach($item的详细信息){
$name=$item['name'];
$salary=$item['salary'];
$dpart=$item['dpart'];
$address=$item['address'];
echo$name.“.的薪水是“$salary.”,地址是“$address.”,出发是“$dpart.”
”; }
或者在循环中没有赋值:

foreach($details as $item)
    print "{$item['name']}'s salary is {$item['name']}, address is {$item['dpart']}, depart is {$item['address']}<br/>";
foreach($item的详细信息)
打印“{$item['name']}的工资为{$item['name']},地址为{$item['dpart']},离职为{$item['address']}
”;
您只需使用
foreach
即可访问结果。循环
$details
as

foreach($details as $item) {
    $name    = $item['name'];
    $salary  = $item['salary'];
    $dpart   = $item['dpart'];
    $address = $item['address'];
    echo $name."'s salary is ".$salary.", address is ".$address.", depart is ".$dpart."<br/>";
}
foreach($item的详细信息){
$name=$item['name'];
$salary=$item['salary'];
$dpart=$item['dpart'];
$address=$item['address'];
echo$name.“.的薪水是“$salary.”,地址是“$address.”,出发是“$dpart.”
”; }
或者在循环中没有赋值:

foreach($details as $item)
    print "{$item['name']}'s salary is {$item['name']}, address is {$item['dpart']}, depart is {$item['address']}<br/>";
foreach($item的详细信息)
打印“{$item['name']}的工资为{$item['name']},地址为{$item['dpart']},离职为{$item['address']}
”;
这很酷,也许第一种方式也比组合快,不是吗?我怀疑速度是个问题。但这并不是什么阵列争论。许多这样的数组的问题是,它们必须有相同的项和正确的对应元素。你们能不能先从多维数组开始?这很酷,也许第一种方法也比组合更快,不是吗?我怀疑速度是个问题。但这并不是什么阵列争论。许多这样的数组的问题是,它们必须有相同的项和正确的对应元素。您不能从多维数组开始吗?请注意第一个示例会删除初始数组。请注意第一个示例会删除初始数组。