0

私は次の配列を持っています:

$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ステートメントで間違っていることを説明するのを手伝ってくれるなら、私はより良い理解を大いに感謝します。

敬具

4

1 に答える 1

2
$requirement3 = array_combine($doc_id,$requirement2);

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

デモ: http://codepad.org/bDhBw2aZ

于 2013-02-08T10:20:04.237 に答える