我有以下数组:
$doc_id = (3,5,4,6)
$requirement2 = (2,0,0,1)
我正试图使用以下代码使$doc_id
成为$requirement2
的关键元素:
<?php
include "../includes/auth.php";
include "../includes/header.php";
$jat_id = intval($_GET['id']);
$div_id = intval($_GET['div_id']);
$order = "SELECT * FROM document_assoc WHERE jat_id = '$jat_id'";
$result = mysql_query($order);
$row = mysql_fetch_array($result);
$doc_id3 = $row['doc_id'];
$doc_id = explode(",", $doc_id3);
$requirement = $row['requirement'];
$requirement2 = explode(",", $requirement);
foreach ($doc_id as $doc_id4) {
$requirement3 = array($doc_id4=>$requirement3);
foreach ($requirement2 as $requirement3) {
$requirement3 = array($doc_id4=>$requirement3);
print_r ($requirement3);
}}
include "../includes/footer.php";
?>
然而,我在print_r()上收到以下内容:
Array ( [3] => 2 ) Array ( [3] => 0 ) Array ( [3] => 0 ) Array ( [3] => 1 ) Array ( [5] => 2 ) Array ( [5] => 0 ) Array ( [5] => 0 ) Array ( [5] => 1 ) Array ( [4] => 2 ) Array ( [4] => 0 ) Array ( [4] => 0 ) Array ( [4] => 1 ) Array ( [6] => 2 ) Array ( [6] => 0 ) Array ( [6] => 0 ) Array ( [6] => 1 )
这是我迄今为止最接近的一次。但显然还是错了。
从我读到的内容来看,我需要它看起来像这样:
Array ( [3] => 2 [5] => 0 [4] => 0 [6] => 1 )
这样以后我就可以用$requirement3[$doc_id]
来称呼它了。(调用$doc_id时,它将是一个不同于在此数组键中设置它的变量源)。
如果有人能帮助解释我在2个foreach
陈述中做错了什么,我将非常感谢你能更好地理解我。
亲切问候
$requirement3 = array_combine($doc_id,$requirement2);
http://www.php.net/manual/en/function.array-combine.php
演示:http://codepad.org/bDhBw2aZ